User:Ezer'Arch/Sandbox
Special YouTube playlist of 1.09.4 maps
A video playlist showing some 1.09.4 maps.
SRB2 - Special list of 1.09.4 maps
Zoom Tube tutorial
Zoom tube is not that hard; neither tricky, long, nor frustrating.
You need to tell SRB2:
- Where the zoom tube starts and where ends;
- Speed and sequence number
- The trajectory of the zoom tube.
How to express such things in a level editor?
Where the zoom tube starts and where ends
Build the ZT. It may be actually a tube in a wall or an open-air room.
Zoom Tube Start sector and Zoom Tube End sector. Both sectors receive same tag.
Speed and sequence
LD-3: tagged to start and end.
Front texture X offset: speed.
Front texture Y offset: sequence number.
Sequence is a number that identifies the ZT. This is needed because more ZTs may exist in a single level, and SRB2 will need to know which ZT a character is using. A sequence is made of a set of steps. Steps are points of trajectory that the character will follow. How to set these steps up? Let's see it now.
The trajectory
SRB2 never will guess where the steps of a sequence are. So, you need to mark where they are. Each point of a ZT trajectory is marked by a Zoom Tube Waypoint. Place a Zoom Tube Waypoint thing...
But, how will SRB2 know which is the 1st step, the 2nd, the 3rd and so on? Each Zoom Tube Waypoint must receive, in its angle, a tag number that tells SRB2 its step number and which sequence the step belongs to.
Angle = (sequence * 256) + step.
Both sequence and step are zero-based numbers.
Sample
Say, you've built a ZT and gave it a sequence number 4. This ZT has 2 "turns" in its middle. So, we need to place 4 Zoom Tube Waypoint things:
Step 1 (the start): (4*256)+0 = 1024
Step 2 (1st turn): (4*256)+1 = 1025
Step 3 (2nd turn): (4*256)+2 = 1026
Step 4 (the end): (4*256)+3 = 1027
- Sequence number 0: from 0 up to 255;
- Sequence number 1: from 256 up to 511;
- Sequence number 2: from 512 up to 767;
- Sequence number 3: from 768 up to 1023;
- Sequence number 4: from 1024 up to 1279;
- ... and so on.
Water Tutorial
Lakes
(originally from: http://mb.srb2.org/showthread.php?t=32670)
If I remember correctly, there was another topic asking same question: "How to make water", but I don't remember where it was.
Well, let me explain briefly how to make water:
1) Make a pit. Draw a sector and give it a depth; 64 fracunits deep is enough (Sonic will not be able to get out of if the cliffs have more than 96 FU height). And set a texture for the cliffs.
http://img51.imageshack.us/img51/5578/water01.jpg
2) Make a control sector. Control sector is a little sector you draw outside the map. It applies effects to the sectors in the map. A little triangle is enough.
http://img145.imageshack.us/img145/4315/water02.jpg
3) Choose the water dimensions and appearance. First, set "Sector Mode" on. Now double-click the control sector.
Give it a water surface height by setting its ceiling height, -8 is good; and a water bottom height by setting its floor height, set a value deeper than lake bottom height; -96 would be good (unless you want a weird effect of water surface hovering on the lake bottom).
(Note: I gave these heights because I know the floor height around is zero)
Give the control sector water flats (flats are floor textures). Recommendation: BWATER01.
Now click OK.
4) Choose the water effects. First, set "Lines Mode" on. Now double-click a control sector's linedef.
In Properties Tab, click on "Select Action...". In FOF category, choose "Water, Translucent, No sides (123)". Click OK.
Back in Properties Tab, give it a Sector Tag number. Then, click on "Next unused", it'll search the next tag number after the last one you used. As it's your first time you're setting a control sector in your map, then the sector tag number would be "1".
What is the sector tag number for?
Sector tag number is a link between the control sector and the sector that will receive the effect. Then, all sectors that have a tag number "1" will receive a water effect with control sector's dimensions.
http://img36.imageshack.us/img36/6970/water04.jpg
5) Applying effects of control sector to the pit sector. "Sector Mode" on. Double-click the pit sector and give it a tag number of 1.
http://img51.imageshack.us/img51/1937/water05.jpg
6) Test your map.
More about water: http://wiki.srb2.org/wiki/Water_Design
Waterfalls
A waterfall is made of water FOFs. The only things you'll need to do more are:
- use waterfall textures for wall textures (BFALL1, CFALL1, GFALL1, LFALL1 or OFALL1)
- place some Water Ambience things (thing 700-707). They produce a waterfall noise, unless you want to create a silent waterfall.
Depending on kind of waterfall you want to create, maybe you don't need to create a pit for waterfall because it'll be above the floor height.
Rivers with currents
Rivers is made of water FOF as well, but with current.
SRB2 Doom Buider - When the Level Header crashes at you
Yea, I had to install my precious SRB2DoomBuilder on my precious laptop! There I go messing with my maps. Everything goes well. It's all fun and games until I need to edit the level header of my precious level, then...
Run-Time Error '339' Component 'cmcs21.ocx' or one of its dependencies not correctly registered: a file is missing or invalid
"No panic. Act naturally." It happened with me before and I managed to sort it out. SRB2DB is just complaining cmcs21.ocx is missing. Let's fix it step by step:
- Run the computer as administrator;
- Get cmcs21.ocx: search and download it, if it's a zip file, extract it;
- Move the file to C:\windows\system32;
- And then, open up the MS-DOS Prompt. Go to the taskbar: Start > Run > Type
cmd
orcommand
and press enter (Note: the CMD must be "Run as Administrator"). A black window will pop up; - Now, run the following at the command line:
regsvr32 cmcs21.ocx
- That's what I get: RegSvr32: DllRegisterServer in cmcs21.ocx succeeded.
- Done.
SRB2 Doom Buider - Installing on Windows 7 64bits
- Install SRB2DB normally;
Get cmcs21.ocx: search and download it, if it's a zip file, extract it;
- Move the file to C:\windows\sysWOW64 (it's sysWOW64, not system64!)
- And then, open up the MS-DOS Prompt. Go to the taskbar: Start > Run > Type
cmd
orcommand
and press enter (Note: the CMD must be "Run as Administrator"). A black window will pop up; - Now, run the following at the command line:
\windows\syswow64\regsvr32 cmcs21.ocx
- If you are running as adminstrator *and* User Account Control (Run > UAC) is set to "Never notify", you'll see the message "RegSvr32: DllRegisterServer in cmcs21.ocx succeeded.". If you are running as adminstrator and User Account Control is set to a higher level of notification, cmcs21.ocx will be installed but with restrictions; the system will constantly ask you for write permission and SRB2DB will likely crash, fail to open wads and save settings.
Teleporter Tutorial
This is a stub:
Drawing the Sectors
- 1st sector - the origin where the character will step in to be teleported from...
- give it Sector type 64 (or other)
- tag 1
- 2nd sector - the destine where the character will be teleported:
- tag 2
- place a teleporter destination thing (Thing type 751)
Control Sector
- control sector:
- LD-301 (tag 1)
- LD-412 (tag 2)
(Needs an image)
Brainstorming
Just because I need to write up the ideas before vanishing from my head, as usual D:
Launch player/object on touch
Launches the player and/or pushable objects on touch. XSRB2 already does the first.
Launch player/object by trigger
Launches the player and/or pushable objects if trigger. Could be triggered by other player, pushable object (catapult), timer, sector height comparison (XSRB2).
- special flags: alternate launching between player x pushable object (ala S3K Mushirrom Hill Zone's seesaw); force player into spring-up animation; animate/spin pushable object.
Group sectors (suggested)
Makes a set of different sectors or FOFs behave as a united group. Say, you have 5 different bobbing FOFs, if you stand on one of them, they will bob together (canoes); other: a spin-powered elevator made of 3 FOFs, if you spin on top of one of them, all 3 FOFs will move up or down together.
Wind/Current
New behavior for water slides:
- special flags: float on top; half-height FOF float with small bobbing; force into spin animation; pull enemies.
Whirlpool and twisters: It'd require: a Wind Sector, Whirl linedef type and a whirl axis thing. Every tic the program checks the vector between the player the the axis, find the angle, add 90 degrees (or 1/2 pi rad) and drag the player/object. As the program checks the angle for wind every tic, it'll produce a circular trajectory. The wind strength is defined by linedef length.
- special flags: float on top; half-height FOF float; force into spin animation; force into pain state; pull enemies.
Normal currents:
- special flags: carry the player along the center of the sector (vertical current).
Ring drainer
Adjust the speed of the draining. Well, Special Parameters linedef could be a "multi-purpose tool" for these sectors that require simple adjustments.
Custom variable (in the making, only for SP though)
Let the level designers store integer values so that it can be used later.
- Linedef executor: set, add, subtract values.
- Linedef trigger: equal to, greater than, less than check.
Shield triggers (suggested)
Some traps, damages or effects could be triggered depending on the shield the player is using.
Sequence triggers
Player must trigger a set of linedefs in sequence in order to activate the last linedef executor. For instance: step on the sector 1, 2, 3 and 4 to activate a linedef executor.
Set/refill/drain Rings + trigger
Refill/Drain a certain amount of rings to trigger a linedef. Say, player receives rings from a "device"/sector and "gives" them away in other point. Useful for special stages, unlockable rooms or to power machinery.
Bustable FOFs (suggested)
Sprites and sound chosen by linedef, not by sector type. See: http://mb.srb2.org/showthread.php?p=707761#post707761
Activate Floating Platform and DSZ waterfall glitch
Say, the Activate Floating Platform (Linedef Type 60) currently requires:
- Starting point heights
- Maximum point heights
- Minimum point heights
This means that we can have, say, 10 FOFs with the same speed, maximum and minimum point heights but each one will have a different starting point heights. Now, let's stack over each one. For instant, we'll see they will move with a constant distance between them, but after the first cycle they will start to overlap each other, causing a big mess. What if they disappear when they reach the minimum point and respawn at the maximum point? Then, we have got a perfect and continuous FOF-over-FOF fall, like Flying Battery Zone's crushers, and the DSZ waterfall glitch is death.
Force player into spinning animation or other animation
Ala Sonic 2 special stage. Player can walk, run, jump, move to dodge obstacles/hazards, but can't use special abilities.
No more players trigger
Activate linedef sector if there's no longer players in the sector. It avoids players from being trapped on "No more enemies" traps.
Circular Zoom-tube
It's possible since NiGHTs mode uses work like a circular zoom-tube. Checking a thing flag, the waypoint is "converted" into an arc axis.
Appear-disappear FOF
Let me choose different sound number to be played. I'd like to create lasers that appear and disappear at a cycle, but the player needs to be aware of the laser before it appears.
- special flags: sound is played before the FOF appears. Sound is defined in texture fields (#0000-1024).
DEVMAP (0 1 2 3)
Controls the devmap zoom (disabled, 1024, 2048, 4096 FU height view).
OGL - Shadows
Shadows should be sun oriented.
Misc
- OGL - Render thokbarrier flats.
- "No Save" slot. Because I don't like to use normal slots to test out my SP maps.
- Increment/Decrement variables (e.g. CAM_HEIGHT ++20)