Wstęp
Plik DEF zawiera cały kod areny, nie ma tu plików CNS, CMD, AIR, itd. Wszystko jest zawarte w jednym pliku. Ma to swoje dobre i złe strony. Areny mają niewielkie możliwości, są proste i dosyć przejrzyste jednak powstaje spory bałagan kiedy rozbudujesz arenę i dodasz animacje, które przy tworzeniu postaci znajdowały się w osobnym pliku AIR. Omawiane grupy i kod nie muszą być zapisane dokładnie w tej samej kolejności.
Areny nie mogą wpłynąć na postacie znajdujące się na niej ani odwrotnie (z pewnymi drobnymi wyjątkami, bo postać ma większą władzę niż arena). Dlatego nigdy nie zrobisz np. areny platformowej, po której można by skakać stając w odpowiednich miejscach. Zapomnij o tym. Arenę możesz rozbudować jedynie graficznie, dodać odbicia, efekty, dynamiczne animacje i zaskoczyć wszystkich ciekawym pomysłem. Wszystkie udziwnienia i niestandardowe zachowania postaci na arenach to wynik dopasowania postaci do danej areny.
Tak wyglądają osie współrzędnych areny, osie: X, Y i Z. Oś Z służy do tworzenia sztucznego 3D. Wartości ujemne spowodują, że postać będzie mniejsza i jakby wbita bardziej w arenę, dodatnie przybliżą postać, oś Z nie jest w pełni sprawna i zaleca się nie używać jej. Oś Y ma punkt 0 usadowiony wysoko na górze, oś X ma punkt 0 standardowo na środku areny (jak na obrazku). Mugenowy ekran ma standardowo wymiary 320x240 pikseli.
Przykładowy schemat areny:
[Info] ;podstawowe informacje ... [StageInfo] ;podstawowe parametry ... [PlayerInfo] ;położenie postaci ... [Scaling] ;skalowanie postaci ... [Camera] ;ustawienia kamery i wyświetlania ... [Bound] ;dystanse od krawędzi ekranu ... [Shadow] ;cień postaci ... [Reflection] ;odbicie obrazu ... [Music] ;muzyka na arenie ... [BGdef] ;definicja tła areny ...
[StageInfo] - podstawowe parametry
[StageInfo] : (tekst) Grupa z podstawowymi parametrami areny.
zOffset = 200 : (liczba_c) Wartość określa na jakiej wysokości znajduje się podłoże areny (podłoga), konkretnie chodzi tu o pozycję 0 na osi Y areny, standard to: zOffset = 200, ponieważ środek osi jest usadowiony wysoko tak jak na grafice we wstępie. Nazwa jest myląca i sugeruje oś Z, została zachowana z powodów kompatybilności.
zOffsetLink = ID : (liczba_c) Numer ID dla zOffset, dzięki obiektowi o typie dummy, który jest opisany w Obiekty graficzne w mugenie, można dynamicznie zmieniać pozycję zOffset. Jeżeli nie chcesz dynamicznie wpływać tym obiektem na zOffset, nie musisz dodawać tego wpisu.
AutoTurn = 1 : (0/1) 1 = uruchamia auto odwracanie się postaci twarzą do siebie, 0 = wyłącza auto odwracanie.
ResetBG = 1 : (0/1) Restartowanie areny miedzy rundami. Jeżeli chcesz restartować (czyścić) arenę między rundami wstaw tu 1. Jeżeli np. stworzyłeś animację drzewa w które uderzył piorun i przewróciło się ono, to jeżeli nie chcesz żeby podczas 2 rundy sytuacja się powtórzyła, w takiej sytuacji wstaw tu 0.
HiRes = 0 : (0/1) [Win Mugen plus] Opcja powstała w jednej z modyfikacji Win Mugena, która obsługiwała areny z grafiką dla rozdzielczości 640x480. W innych wersjach Mugena wpis nie jest wspierany ale w Mugenie 1.0 wpis jest interpretowany jako LocalCoord = 640,480. Jak przekonwertować arenę Hi-res z Win Mugen plus do Mugen 1.0 ? Zobacz w Pytania i odpowiedzi - F.A.Q. » Jak to zrobić ?
Przykład:
[StageInfo] ;podstawowe parametry zOffset = 200 ;podłoże areny zOffsetLink = 0 ;ID dla zOffset AutoTurn = 1 ;auto odwracanie postaci ResetBG = 1 ;restartowanie areny HiRes = 0 ; [Win Mugen plus]
[PlayerInfo] - położenie postaci
[PlayerInfo] : (tekst) Grupa z położeniem postaci.
P1startX = -70 : (liczba_c) Pozycja startowa pierwszej postaci na osi X, standard to: P1startX = -70.
P1startY = 0 : (liczba_c) Pozycja startowa na osi Y, powinna być to wartość: 0 ponieważ oznacza to rejon po którym chodzi postać. Jeżeli dasz inną wartość to przy podskoku, upadku itd. postać wróci na pozycję 0.
P1startZ = 0 : (liczba_c) Pozycja startowa na osi Z, standard to1 0, nie obsługiwana w nowszych wersjach silnika.
P1facing = 1 : (liczba_c) Kierunek w który skierowana jest pierwsza postać, 1 = w prawo, -1 = w lewo.
P2startX = 70
P2startY = 0
P2startZ = 0
P2facing = -1
P3startX = -100
P3startY = 0
P3startZ = 0
P3facing = 1
P4startX = 100
P4startY = 0
P4startZ = 0
P4facing = -1
LeftBound = -1000 : (liczba_c) Maksymalna możliwa przestrzeń poruszania się postaci i obiektów na osi X w lewo względem ekranu, nie chodzi tu o kamerę. Dla Win Mugena lewa krawędź ekranu to 0, Mugen 1.0 przyjmuje 0 za środek osi X. Standard to: LeftBound = -1000.
RightBound = 1000 : (liczba_c) Maksymalna możliwa przestrzeń poruszania się postaci i obiektów na osi X w prawo. Dla Win Mugena standard to: RightBound = 1000 czyli 319 + 681. Mugen 1.0 liczy wartość od środka osi X czyli 1000 to 160 + 840.
TopBound = 0 : (liczba_c) Maksymalna możliwa przestrzeń poruszania się na osi Z w głąb areny, nie obsługiwana w nowszych wersjach silnika.
BotBound = 0 : (liczba_c) Maksymalna możliwa przestrzeń poruszania się na osi Z w przód areny, nie obsługiwana w nowszych wersjach silnika.
Przykład:
[PlayerInfo] ;położenie postaci P1startX = -70 ;pozycja startowa X P1startY = 0 ;pozycja startowa Y P1startZ = 0 ;pozycja startowa Z P1facing = 1 ;skierowanie postaci P2startX = 70 P2startY = 0 P2startZ = 0 P2facing = -1 P3startX = -100 P3startY = 0 P3startZ = 0 P3facing = 1 P4startX = 100 P4startY = 0 P4startZ = 0 P4facing = -1 LeftBound = -1000 ;maksymalna przestrzeń osi X w lewo RightBound = 1000 ;maksymalna przestrzeń osi X w prawo TopBound = 0 ;maksymalna przestrzeń osi Z w głąb BotBound = 0 ;maksymalna przestrzeń osi Z w przód
[Scaling] - skalowanie postaci
Jak działa to skalowanie ? Ograniczasz skalowanie ustawiając np. TopZ = -100 i TopScale = 0, BotZ = 0 i BotScale = 1, to przy ustawieniu w [PlayerInfo] P1startZ = -100 twoja postać będzie miała skalę 0% a przy P1startZ = -50 postać będzie miała skalę 50% itd. W Win Mugenie używano osi Z do sprawdzania na jakiej arenie się walczy.
[Scaling] : (tekst) Skalowanie postaci na arenie, jest związane z osią Z, nie musisz nic zmieniać jeżeli nie używasz osi Z. Skalowanie postaci nie jest obsługiwane w nowszych wersjach silnika.
TopZ = 0 : (liczba_c) Granica skalowania na osi Z w głąb, działa podobnie do wartości TopBound która ogranicza oś Z.
BotZ = 50 : (liczba_c) Granica skalowania na osi Z w przód areny.
TopScale = 1 : (liczba_rz) Skala dla wartości ustalonej pod TopZ.
BotScale = 1.2 : (liczba_rz) Skala dla wartości ustalonej pod BotZ.
Przykład:
[Scaling] ;skalowanie postaci TopZ = 0 ;skalowanie osi Z w głąb BotZ = 50 ;skalowanie osi Z w przód TopScale = 1 ;Skala dla TopZ BotScale = 1.2 ;Skala dla BotZ
[Camera] - ustawienia kamery i wyświetlania
[Camera] : (tekst) Ustawienia kamery i wyświetlania, kamera służy do podglądu akcji na arenie.
StartX = 0 : (liczba_c) Startowe ustawienie wyświetlania mapy na osi X, przy starcie mapa będzie starała się przesunąć do pozycji 0, więc standard to: StartX = 0.
StartY = 0 : (liczba_c) Startowe ustawienie wyświetlania mapy na osi Y, standard to: StartY = 0.
BoundLeft = -50 : (liczba_c) Maksymalne możliwe przesunięcie kamery w lewo na arenie, wartości powinny być ujemne, liczone od krawędzi ekranu.
BoundRight = 50 : (liczba_c) Maksymalne możliwe przesunięcie kamery w prawo na arenie, wartości powinny być dodatnie, liczone od krawędzi ekranu.
BoundHigh = -25 : (liczba_c) Maksymalne możliwe przesunięcie kamery w górę kiedy postać podskoczy lub lata, wartości powinny być ujemne, liczone od krawędzi ekranu. Standard to: BoundHigh = -25.
BoundLow = 0 : (liczba_c) Maksymalne możliwe przesunięcie w dół, proponuje się 0. Standard to: BoundLow = 0.
VerticalFollow = 0.2 : (liczba_rz) Efekt pionowego podążania za najwyżej położoną postacią, jeżeli podskakuje lub lata ekran podąża za nią z określoną prędkością dzięki podanemu współczynnikowi. Proponowane są wartości między 0 a 1. 0 = oznacza że kamera nie będzie podążała za postacią, 1 = kamera będzie starała się trzymać postaci jak najbliżej. Standard to: VerticalFollow = 0.
FloorTension = 0 : (liczba_c) Minimalny dystans pionowy najwyższej postaci od podłoża areny, który wywoła podążanie kamery za postacią. Wartości powinny być dodatnie. Dla wysokich aren proponuje się wartości między 20 a 30. Standard to: FloorTension = 0.
Tension = 50 : (liczba_c) Dystans poziomy do prawej i lewej krawędź ekranu, kamera zacznie podążać za postacią kiedy ta zbliży się bardziej do krawędzi niż podana wartość. Proponowane są wartości miedzy 0 a 160, najczęściej między 50 a 60, dla standardowej rozdzielczości 160 to połowa z 320, czyli połowa szerokości ekranu, dla tego na tę wartość ma wpływ rozdzielczość areny. Standard to: Tension = 50.
Przykład:
[Camera] ;ustawienia kamery i wyświetlania StartX = 0 ;start na osi X StartY = 0 ;start na osi Y BoundLeft = -50 ;max przesunięcie kamery w lewo BoundRight = 50 ;max przesunięcie kamery w prawo BoundHigh = -25 ;max przesunięcie kamery w górę BoundLow = 0 ;max przesunięcie kamery w dół VerticalFollow = 0.2 ;efekt podążania za postacią FloorTension = 20 ;dystans od podłoża który wywoła podążanie Tension = 50 ;dystans do prawej i lewej krawędzi ekranu
[Bound] - dystanse od krawędzi ekranu
[Bound] : (tekst) Dystanse postaci od krawędzi ekranu.
ScreenLeft = 15 : (liczba_c) Dystans od lewej krawędzi ekranu, której postać nie może przekroczyć kiedy kamera się nie rusza, standardowa wartość to 15, jeżeli natomiast podasz tu wartość ujemną postać po prostu wyjdzie poza ekran. Standard to: ScreenLeft = 15.
ScreenRight = 15 : (liczba_c) Dystans od prawej krawędzi ekranu, której postać nie może przekroczyć. Standard to: ScreenRight = 15.
Przykład:
[Bound] ;dystanse od krawędzi ekranu ScreenLeft = 15 ;od lewej krawędzi ScreenRight = 15 ;od prawej krawędzi
[Shadow] – cień postaci
[Shadow] : (tekst) Opcje związane z cieniem.
Intensity = 128 : (liczba_c) Intensywność cienia, wartości od 0 do 255, 0 to minimum (nie widać cienia) a 255 to maksimum, standard to: Intensity = 128.
Color = 0,0,0 : (liczba_c) Kolorystyka cienia w RGB, teoretycznie można nadać tu kolor cienia podając wartości od 0 do 255 dla każdego z kolorów, standard to: Color = 0,0,0.
yScale = 0.4 : (liczba_rz) Skala cienia, liczby dodatnie kierują cień w dół, ujemne w górę, standard to: yScale = 0.4.
Fade.Range = -200,-50 : (liczba_c) Zasięg cienia na osi Y składa się z dwóch wartości. Pierwsza to maksymalna odległość, jeżeli postać ją przekroczy, cień zniknie. Druga to średnia wartość, po jej przekroczeniu cień staje się mniej intensywny, natomiast poniżej cień ma taką samą intensywność jaka ustawiona jest w Intensity. Jeżeli wpis zostanie pominięty, standard to: Fade.Range = 0,0; w tedy cień jest zawsze widoczny. Wartości są ujemne dla postaci skaczącej w górę.
Przykład:
[Shadow] ;cień postaci Intensity = 128 ;intensywność cienia Color = 0,0,0 ;kolor yScale = 0.4 ;skala cienia Fade.Range = -200,-50 ;zasięg cienia
[Reflection] - odbicie obrazu
[Reflection] : (tekst) Odbicie obrazu postaci.
Intensity = 0 : (liczba_c) Intensywność odbicia, wartości od 0 do 255, 0 to minimum (brak odbicia) a 255 to maksimum, standard to: Intensity = 128. Odbicie można wykorzystać tworząc np. efekt lustrzanej podłogi.
Przykład:
[Reflection] ;odbicie obrazu Intensity = 128 ;intensywność odbicia
[Music] - muzyka na arenie
[Music] : (tekst) Muzyka na arenie.
BgMusic = sound\muzyka.mp3 : (tekst) Ścieżka do pliku dźwiękowego. Można dostarczyć swoją muzykę z areną, Mugen wyszukuje pliku dźwiękowego z pozycji głównego folderu z grą. Twórcy Mugena dodali możliwość odtwarzania muzyki z CD za pomocą zapisku: .da, należy wstawić numer ścieżki audio na płycie np. 3.da. Przy ustawionym 0.da zostanie odtworzona losowa ścieżka. Wszystko jednak zależy od ustawienia urządzenia odtwarzającego CD w pliku mugen.cfg. Nie polecam odtwarzania muzyki z CD bo mogą wystąpić liczne błędy.
BgVolume = 0 : (liczba_c) Głośność, wartości od -255 do 255, wartości ujemne ściszają, wartości dodatnie podgłaśniają, standard to: BgVolume = 0.
Przykład:
[Music] ;muzyka na arenie BgMusic = sound\muzyka.mp3 ;ścieżka do pliku dźwiękowego BgVolume = 0 ;głośność
[BGdef] - definicja tła areny
W tym miejscu dodaje się grafikę która będzie wyświetlana na arenie. Grafikę dodaje się według schematów, używając kilku typów obiektów.
Mugen właściwie określa to jako tła które są nakładane warstwowo ale określiłem to jako obiekt bo ma to swoją nazwę i typ, w zależności od typu wyświetla pojedynczy sprit lub animację. Wszystkie obiekty mają wyświetlać lub kontrolować grafikę w danym obszarze, obszar ten jest odpowiednio zdefiniowany tzn. ma swoją nazwę a obiekty przejmują tę nazwę. Jeżeli nazwa będzie zła, obiekt nie zostanie wczytany. Z reguły przy definicji możesz dodawać też ścieżkę do pliku SFF. Jak widać na przykładach wszystko opiera się na tym samym schemacie. Są cztery typy obiektów, poza ustawieniami każdego obiektu można je jeszcze razem kontrolować po określonym numerze ID.
Na nakładanie obiektów wpływa kolejność ich wywołania (te dodane niżej w kodzie nałożą się na te dodane wyżej). Pamiętaj, że nie musisz podawać wszystkich parametrów jeżeli uważasz, że ich nie potrzebujesz, Mugen ustawi dla nich standardowe wartości, wywoła błąd tylko kiedy będzie brakowało ważnego parametru lub będzie on nie przy tym obiekcie co trzeba, ostatecznie zignoruje parametr.
[BGdef] : (tekst) Definicja tła areny.
Spr = plik.sff : (tekst) Ścieżka do pliku SFF.
DebugBG = 0 : (0/1) 1 = włącza tryb debug tła, powoduje zamalowanie standardowo czarnego tła na inny kolor, tak żeby łatwo zobaczyć luki w rozmieszczeniu grafiki. Po zakończeniu prac zaleca się wyłączenie tego trybu ponieważ zmniejsza wydajność. Standard to DebugBG = 0.
Obiekty graficzne oraz ich kontrola opisane są w artykule: Edytowanie Mugena » Obiekty graficzne w Mugenie.
Przykładowy schemat tła areny z obiektami:
[BGdef] ; Definicja tła areny. spr = plik.sff ; (tekst) Ścieżka do pliku SFF. debugbg = 0 ; (0/1) Włącz/wyłącz tryb debug tła. ... [BG Nazwa obiektu] ; 1 obiekt. type = normal ; (tekst) Typ obiektu. ... [BG Nazwa obiektu 2] type = parallax ... [BG Nazwa obiektu 3] type = normal ... [BGCtrlDef Nazwa kontroli] ; Definicja kontroli obiektów. ... [BGCtrl Nazwa kontrolera] type = VelSet ... [BGCtrl Nazwa kontrolera 2] type = VelSet ...
Przykładowy kod areny
Arena Training Room (stage0.def):
; Definition of stage 0 (training stage) ; *** denotes values you should change/check for each stage. ; The term "background" is used to mean both backgrounds and foregrounds. ;-------------------------------------------------------- [Info] ;Name of the stage. name = "Training Room" ;-------------------------------------------------------- [Camera] ;Camera starting position: Usually 0 for both startx = 0 starty = 0 ;Left and right bound of camera ;You may want to fiddle a bit with these values to make sure the ;background doesn't move too far or too little ;*** boundleft = -95 boundright = 95 ;High and low bound of camera ;High is a negative number. Make is more negative if you want to ;camera to be able to move higher. ;Low should usually be 0. ;If omitted, defaults to -25 and 0 respectively ;*** boundhigh = -25 boundlow = 0 ;This is how much the camera will move vertically towards the ;highest player. Valid values are from 0 to 1. A value of 0 will mean ;the camera does not move up at all. A value of 1 will makes the camera ;follow the highest player. ;Typically .2 for normal-sized backgrounds. You may need to pull this ;value up for taller backgrounds. verticalfollow = .2 ;Minimum vertical distance the highest player has to be from the floor, ;before the camera starts to move up to follow him. For extremely ;tall stages, a floor tension of about 20-30 coupled with a ;vertical-follow of .8 allows the camera to follow the action. floortension = 0 ;Horizontal distance player is from edge before camera starts to move ;left or right. Typically 50 or 60. tension = 50 ;-------------------------------------------------------- [PlayerInfo] ;--- Player 1 --- ;Player 1 starting coordinates. ;p1startx is typically -70 and p2startx is 70. ;p1starty and p1startz should be 0. p1startx = -70 ;Starting x coordinates p1starty = 0 ;Starting y coordinates p1startz = 0 ;Starting z coordinates p1facing = 1 ;Direction player faces: 1=right, -1=left ;--- Player 2 --- p2startx = 70 p2starty = 0 p2startz = 0 p2facing = -1 ;--- Common --- ;Don't change these values. leftbound = -1000 ;Left bound (x-movement) rightbound = 1000 ;Right bound topbound = 0 ;Top bound (z-movement) botbound = 0 ;Bottom bound ;-------------------------------------------------------- [Scaling] ;No need to change these values topz = 0 ;Top z-coordinate for scaling botz = 50 ;Bottom z-coordinate for scaling topscale = 1 ;Scale to use at top botscale = 1.2 ;Scale to use at bottom ;-------------------------------------------------------- [Bound] ;Distance from left/right edge of screen that player can move to ;Typically 15 screenleft = 15 ;Dist from left of screen that player can move to screenright = 15 ;Right edge ;-------------------------------------------------------- [StageInfo] ;Z offset for drawing ;Adjust this value to move the ground level up/down in the screen. ;It's the position where the players stand at. ;Up - smaller, Down - larger ;*** zoffset = 190 ;Leave this at 1. It makes the players face each other autoturn = 1 ;Set the following to 1 to have the background be reset between ;rounds. resetBG = 1 ;-------------------------------------------------------- [Shadow] ;This is the shadow darkening intensity. Valid values range from ;0 (lightest) to 256 (darkest). Defaults to 128 if omitted. intensity = 96 ;This is the shadow color given in r,g,b. Valid values for each ;range from 0 (lightest) to 255 (darkest). ;Defaults to 0,0,0 if omitted. ;intensity and color's effects add up to give the final shadow ;result. color = 0,0,0 ;This is the scale factor of the shadow. Use a big scale factor ;to make the shadow longer. You can use a NEGATIVE scale factor ;to make the shadow fall INTO the screen. ;Defaults to 0.4 if omitted. yscale = .3 ;This parameter lets you set the range over which the shadow is ;visible. The first value is the high level, and the second is ;the middle level. Both represent y-coordinates of the player. ;A shadow is invisible if the player is above the high level, ;and fully visible if below the middle level. The shadow is ;faded in between the two levels. This gives an effect of the ;shadow fading away as the player gets farther away from the ;ground. If omitted, defaults to no level effects (shadow is ;always fully visible). fade.range = 0,0 ;-------------------------------------------------------- [Reflection] ;Intensity of reflection (from 0 to 256). Set to 0 to have no ;reflection. Defaults to 0. intensity = 0 ;-------------------------------------------------------- [Music] ;Put a filename for a MOD, MP3 or MIDI here, or just leave it ;blank if you don't want music. If an invalid filename is ;given, then no music will play. To play CD audio, put ;the track number followed by ".da". Using a track number of ;0 will play a random audio track. For example, to play ;track 3 from a music CD, use: ; bgmusic = 3.da bgmusic = ;Adjust the volume. 0 is normal, negative for softer, and ;positive for louder (only for mp3, mods and CDA) bgvolume = 0 ;======================================================== ;-------------------------------------------------------- ; Background definition ; *** ;------------------------------------- ; [BG x] ; type = ? "Normal"/"Parallax" (def: "normal") ; spriteno = ?, ? Sprite group and number: groupno, imgno (req'd) ; start = ?, ? Starting location (integer) (def: 0, 0) ; delta = ?, ? Change in location per camera unit moved (float) (def: 1,1) ; trans = ? Transparency settings: "none"/"add"/"add1"/"sub"" (def: "none") ; mask = ? Masking (int): 0 - off, 1 - on (def: 0) ; velocity = ?, ? Velocity: x, y (float): speed background moves (def: 0, 0) ; tile = ?, ? Tiling: xtile, ytile (int): 0 - off, 1 - infinite, ; >1 - tile that number of times (def: 0, 0) - only for Normal BG ; tilespacing = ?, ? Tiling: x, y (int) : space between tiles (def: 0, 0) ; Parallax-only: ; xscale = ?, ? Top xscale, bottom xscale (float) ; width = ?, ? Top width, bottom width (int) (use either this or above, but not both) ; yscalestart = ? Starting y-scale (float, in percent) (def: 100) ; yscaledelta = ? Change in y-scale per unit (float, in percent) (def: 0) ;------------------------------------- ;------------------------------------- ; Main background definition [BGdef] ;Filename of sprite data spr = stage0.sff ;Set to 1 if you want to clear the screen to magenta before ;drawing layer 0 (the default background). Good for spotting "holes" ;in your background. ;Remember to turn this off when you are done debugging the background, ;because it slows down performance. debugbg = 0 ;---------- ; Start each background element with the following: ; Make sure it's "[BG n]", where n is anything you like (it's only used to ; report errors.) For example, you could use: [BG TheFloor] ; Specify as many as you like. This is an example of a normal background: [BG 0] ;The background type goes here: for now, only NORMAL and PARALLAX ;If this line is omitted, the type will be assumed to be normal. type = normal ;The sprite number to use for the background (from the SFF specified above) ;It's the group-number, followed by a comma, then the sprite-number ;*** Do not omit this line. spriteno = 0, 0 ;This is the layer number, which determines where the sprite is drawn to. ;Valid values are 0 and 1. ;0 for background (behind characters), 1 for foreground (in front) ;If this line is omitted, the default value of 0 will be assumed. layerno = 0 ;This is the starting location of the background in the format ;x, y ;If this line is omitted, the default value of 0,0 will be assumed. start = 0, 0 ;These are the number of pixels the background moves for every single unit ;of camera movement, in the format ;x, y ;For the main background (eg. the floor the players stand on) you'll want ;to use a delta of 1,1. Things farther away should have a smaller delta, ;like 0.5 for example. Things near the camera should have a larget delta. ;If this line is omitted, the default value of 1,1 will be assumed. delta = 1, 1 ;Here is the transparency setting of the background. ;Valid values are: ;"none" for normal drawing ;"add" for colour addition (like a spotlight effect) ;"add1" for colour addition with background dimmed to 50% brightness ;"sub" for colour subtraction (like a shadow effect) ;If this line is omitted, it's assumed that there will be no transparency. trans = none ;Mask means whether or not to draw colour zero of a sprite. ;If you turn masking off, the background will take less CPU power to draw, ;so remember to turn it off on sprites that don't use it. ;If this line is omitted, it's assumed that there will be no masking. mask = 0 ;The format for tiling is x,y. For each of them, the value is: ;0 to use no tiling, 1 to tile, n where (n>1) to tile n times. ;If this line is omitted, it's assumed that there will be no tiling. tile = 1, 0 ;This is the x and y space between each tile, for tiled backgrounds ;If omitted, default value is 0,0 tilespacing = 0,0 ;This defines the drawing space, or "window" of the background. It's ;given in the form ;x1,y1, x2,y2 ;where (x1,y1)-(x2,y2) define a rectangular box. ;Make the window smaller if you only want to draw part of the background. ;You normally do not have to change this setting. Value values range from ;0-319 for x, and 0-239 for y. The values are 0,0, 319,239 by default (full ;screen). window = 0,0, 319, 239 ;---------- [BG 1] type = normal spriteno = 0, 1 start = 0, 185 delta = 1, 1 mask = 0 velocity = 0, 0 tile = 1, 0 tilespacing = 0, 0