Designer Tips and Tricks

Talk about the level designer. Read about tips and tricks and share ideas.

Moderator: Level Moderator

Re: Designer Tips and Tricks

Postby Cyvern » June 18th, 2013, 8:28 am

Yeah, I just noticed that and came back to delete my post, then I saw you had already replied. Heh, sorry about that, glazed over it I guess.
ok good
User avatar
Cyvern
Code: Awesome

 
Posts: 294
Joined: October 6th, 2009, 4:57 pm
Location: A nice place.

Thumbs Up given: 60 times
Thumbs Up received: 15 times

Re: Designer Tips and Tricks

Postby CedarBranch » August 30th, 2013, 5:53 pm

Lamppost-like Lamppost

I'm removing it from my level - it personally took me a while to PLAN and make - but I don't want it to be lost forever, so I thought I'd post the code for it here.

Code: Select all
llitem:285;2128;4000;1;1;0;;0|286;2128;3976;1;1;0;;0|286;2128;3944;1;1;0;;0|286;2128;3912;1;1;0;;0|286;2128;3880;1;1;0;;0|286;2128;3848;1;1;0;;0|287;2128;3824;1;1;0;;0|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75|x901;2128;3800;0.5;0.5;0;100,100,100,100,0,0,0,0,0,-75

(You should know what to do with this by now, if you've read the previous posts in this post.)



Curse Orb

Curse Orbs are very dangerous forces of magic. If you touch one, time will gradually slow down until you die.
To break the curse, go through a Level Splitter--however, you better hope there's one nearby if you slip through a Curse Orb...
A small note, though: If you do not reset the time flow after passing through a Level Splitter and you touch another Curse Orb, the speed will still reset, but you'll also be cursed once more despite having already paused it.

Code: Select all
llitem:x901;696;539;1.375;1.375;0;100,100,100,100,255,0,0,0,-50|x901:curseorbanimation;696;539;1.375;1.375;0;100,100,100,100,255,0,0,0,-50,-100|6;658;501;76;76;0;1;dark,2:playsound,60:sleep,60:time,95:sleep,30:time,90:sleep,30:time,85:sleep,30:time,80:sleep,30:time,75:sleep,30:time,70:sleep,30:time,65:sleep,30:time,60:sleep,30:time,55.00000000000001:sleep,30:time,50:sleep,30:time,45:sleep,30:time,40:sleep,30:time,35:sleep,30:time,30:sleep,30:time,25:sleep,30:time,20:sleep,30:time,15:sleep,30:time,10:sleep,30:time,5:sleep,30:time,4:sleep,24:time,3:sleep,18:time,2:sleep,12:time,1:sleep,6:time,100:cinemamode:camera,0,0,0,0,,250,0,7.5:playsound,27:sleep,40:cameraoff:cinemaoff:movechar,this,0,99999999,0,0,0,0


Dizzy-Curse Orb

These are another kind of "curse orb," but almost as dangerous. Touching one will cause the direction of gravity to tilt back and forth, plus everything will shake, making it a bit harder to focus on where you're going.
To break this "dizziness," either kill yourself or go through a Level Splitter.
Note: Both curses can be in effect at the same time.

Code: Select all
llitem:x901;10405;608;1.375;1.375;0;100,100,100,100,255,255,0,0,-50|x901:dizzycurseorbanimation;10405;608;1.375;1.375;0;100,100,100,100,255,255,0,0,-50,-100|6;10367;570;76;76;0;1;playsound,63:gravity,15:sleep,20:gravity,-15:sleep,20:goto,1|6;10367;570;76;76;0;1;spawnquake,5,30:sleep,30:spawnquake,5,30:sleep,30:goto,0


Backup Recovery Orb

These forces of magic don't break the normal curse (they cannot break the dizziness curse, however), but if you die from something else before that curse kills you, or you manage to pass a Level Splitter (which would pause the slowdown process), Backup Recovery Orbs will help reset the speed of time.
I HIGHLY RECOMMEND PLACING THESE OVER THE START AND RESPAWN POSITIONS, PLUS THEY SHOULD BE BLOCKED OFF OR ISOLATED FROM CURSE ORBS, BECAUSE THEY CAN MESS THINGS UP A BIT IF YOU REACH THEM WITH A CURSE IN EFFECT. IF YOU DON'T HEED THIS, THE TIME FLOW MAY BE WEIRD AND UNPROFESSIONAL.

Code: Select all
llitem:x901;1597;287;1.375;1.375;0;0,300,600,100,0,100,255,0,0,-25|x901:recoverorbanimation;1597;287;1.375;1.375;0;0,300,600,100,0,100,255,0,0,-100|6;1559;249;76;76;0;1;time,100:dark,0:playsound,47


And their animations (place the hitboxes over the Start Position, Respawn points, and on both sides of each level splitter):
Code: Select all
llitem:6;960;992;128;128;0;1;setscale,recoverorbanimation,1,1,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,2,2,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,recoverorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:goto,0|6;952;984;144;144;0;1;setscale,curseorbanimation,1,1,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,curseorbanimation,2,2,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,curseorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:goto,0|6;944;976;160;160;0;1;setscale,dizzycurseorbanimation,1,1,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,2,2,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.9,1.9,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.8,1.8,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.7,1.7,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.6,1.6,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.5,1.5,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.4,1.4,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.3,1.3,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.2,1.2,0,1,1,0,1:sleep,3:setscale,dizzycurseorbanimation,1.1,1.1,0,1,1,0,1:sleep,3:goto,0


These three gimmicks may still have a little room for improvements. If something comes up, I'll try to handle it.

NOTE: There is a bit more to the trick in order to get it to work more properly, but it is too hard to explain without showcasing it. I'm working on a level focusing on Curse Orbs, but I may not be finished with it until a few more days (it could be much sooner--depending on my laziness levels.).
(I typed this note at: 9/3/2013 8:03pm)
Triple J here!
Image
Credit goes to FrozenFire/l.m
Other Stuff: show
AC:NL Info

Dream Address: 4400-3141-4504
Mayor: Triple J
Town Name: Quattom



My Super Mario Maker levels: viewtopic.php?f=77&t=46621&p=344256#p344256

My Youtube channel, if you could possibly bother: https://www.youtube.com/channel/UCuP5V8 ... subscriber

Brand-new Bomberman 64: The Second Attack Gameshark Codes!
Now on Dropbox! Active and updated irregularly.
User avatar
CedarBranch
Impulsive & ambitious

 
Posts: 1242
Joined: June 15th, 2012, 1:10 pm
Location: Reclusive. (At least I want to.)

Runouw Votes Winner
Voted "Best Level" with Essence of Time in Runouw Votes New Year 2014/15

Thumbs Up given: 384 times
Thumbs Up received: 108 times

Re: Designer Tips and Tricks

Postby AwesomeJRFD » September 21st, 2013, 11:07 pm

Poison Effect & Cure
(I thought I posted this here before, but it may have gotten removed for some reason)



  1. Place 4 triggers around the player that each move all 4 with the player (You can use my player coordinates detector for that)
  2. Modify those triggers to also move the spikes item which has a separate tag than the 4 triggers ("poisonspikes" for example), and is about 256 Item Coordinates above the player's start position:
    Code: Select all
    llitem:0;144;1504;1;0;0|6:player;-112;1504;512;256;1;1;move,player,0,32,0,0:move,poisonspikes,0,32,0,0:add,g_playerY,g_playerY,32|6;110;1444;64;64;0;1;set,g_playerX,144:set,g_playerY,1504|6:player;-128;1232;256;512;1;1;move,player,-32,0,0,0:move,poisonspikes,-32,0,0,0:sub,g_playerX,g_playerX,32:set,g_F,0|6:player;-112;1216;512;256;1;1;move,player,0,-32,0,0:move,poisonspikes,0,-32,0,0:sub,g_playerY,g_playerY,32|6:player;160;1232;256;512;1;1;move,player,32,0,0,0:move,poisonspikes,32,0,0,0:add,g_playerX,g_playerX,32:set,g_F,1
    The spikes item should follow the player just outside of the camera's view, assuming you haven't zoomed out or changed the camera in any way.
  3. When you want to move the spikes item to the player, have the following code in the level and use Activate: "poison":
    Code: Select all
    llitem:6:poison;736;1600;16;16;0;1;branch,5,2,g_poisoned,0:exit:move,poisonspikes,0,512,0,0:set,g_poisoned,1
  4. When you want to move the spikes item away from the player, have the following code in the level and use Activate: "cure":
    Code: Select all
    llitem:6:cure;752;1600;16;16;0;1;branch,5,2,g_poisoned,1:exit:move,poisonspikes,0,-512,0,0:set,g_poisoned,0
  5. As you can see, I also included a boolean variable check (g_poisoned) to make sure that "poison" or "cure" aren't activated twice in a row, which would cause the spikes to move too far above or below the player.

Proof of concept level using the codes I provided above (I left the spikes visible so you can see what happens):
Code: Select all
150x50~.7050aa34amaa149amaa149amaa115~~~~0;144;1504;1;0;0~6:mushroom;536;1472;48;32;0;1;playsound,55:activate,poison:sleep,150:activate,cure:sleep,30:turnon,this|6:player;-112;1504;512;256;1;1;move,player,0,32,0,0:move,poisonspikes,0,32,0,0:add,g_playerY,g_playerY,32|6;112;1440;64;64;0;1;set,g_playerX,144:set,g_playerY,1504|6:player;-128;1232;256;512;1;1;move,player,-32,0,0,0:move,poisonspikes,-32,0,0,0:sub,g_playerX,g_playerX,32:set,g_F,0|6:player;-112;1216;512;256;1;1;move,player,0,-32,0,0:move,poisonspikes,0,-32,0,0:sub,g_playerY,g_playerY,32|6:player;160;1232;256;512;1;1;move,player,32,0,0,0:move,poisonspikes,32,0,0,0:add,g_playerX,g_playerX,32:set,g_F,1|272:poisonspikes;144;992;2;2;0;;0|165:mushroom;560;1504;1;1;0;400,100,50;0|90;272;1504;-1;1;0;;0;4;0;camera,1,0,0,0,mushroom,0,0,10:dialog,1,Be%20careful%21%20Touch%20a%20poison%20mushroom%20and%20you%20will%20be%20poisoned%20for%205%20seconds%21:camera,1,0,0,0,tree,0,0,10:dialog,1,Touch%20a%20tree%20to%20cure%20yourself%20if%20you%20get%20poisoned.:cameraoff;0|133:tree;816;1504;1;1;0;;0|6:tree;792;1408;48;96;0;1;playsound,47:stoptrigger,mushroom:activate,cure:invis_wait:turnon,this:turnon,mushroom|6:poison;0;1600;16;16;0;1;branch,5,2,g_poisoned,0:exit:move,poisonspikes,0,512,0,0:set,g_poisoned,1|6:cure;16;1600;16;16;0;1;branch,5,2,g_poisoned,1:exit:move,poisonspikes,0,-512,0,0:set,g_poisoned,0|2;1104;1504~Poison%20proof%20of%20concept~AwesomeJRFD~3~4;0;0~1~1;0~0;0;3~1378948444~0.4
Image
User avatar
AwesomeJRFD
Honorary Member

 
Posts: 836
Joined: November 11th, 2010, 2:06 pm
Location: Sixteenth Dimension: Hyperspace

Runouw Votes Winner
Best Thread (An Explanation of Triggers) in Runouw Votes Summer 2013

Thumbs Up given: 50 times
Thumbs Up received: 38 times

Re: Designer Tips and Tricks

Postby KABOOM » November 7th, 2013, 3:53 pm

Moving a checkpoint

Code: Select all
150x50~.7050aa9.47aa103.47aa103.47aa94~~~1:check;243;1507|6;134;1441;64;64;0;1;move,check,0,-999,0,0~0;110;1507;1;0;0~~My%20Level~~1~1;0;0~1~0;0~0;0;3~1383868031~0.4


When a checkpoint is moved with a "move item" trigger, it will change where the checkpoint sends you after you die, but not the area where you touch to activate the checkpoint. In the example level code, when walking right from the start, a trigger moves the checkpoint upwards. Continue to walk right until you hear the normal "checkpoint activated" sound, then jump into the pit and respawn. You'll respawn at a point far above the ground, where the checkpoint was moved.

This could potentially be used for features such as "hopeless" boss fights where losing is required to advance the level, or in order to skip a long cutscene after dying once after seeing the scene. If Runouw doesn't fix this I plan to use it in future levels. Otherwise, I hope Runouw implements a feature or trigger that can change the respawn point of a checkpoint.
User avatar
KABOOM
Prophet of Shadowsquid

 
Posts: 1144
Joined: October 16th, 2009, 11:31 am
Location: Just a little further.

A Good Start

Thumbs Up given: 44 times
Thumbs Up received: 121 times

Re: Designer Tips and Tricks

Postby JSlayerXero » November 26th, 2013, 12:52 pm

Alternate Player Coordinates Detection

This is an alternative to JRFD's Player Coordinates Detector. Instead of the hitboxes being huge and detecting in full blocks, these move 8 pixels at a time, and are set up so that the player will collide with more if it's moving quickly. There is a speed limit I'm not quite aware of though. It does involve significantly more triggers, which can be a bit annoying if you're trying to manually combine it with the poison affect JRFD posted since you'll need to alter/add or remove several move triggers. There might be some other slight differences I'm not quite aware of yet.

These are the raw items, not programmed to work with poison. Springboard button was added to test how fast you can move without breaking this. Feel free to experiment yourself.
Code: Select all
llitem:6:player;64;1504;160;80;1;1;move,player,0,8,0,0:add,g_playerY,g_playerY,8|6:player;48;1408;80;160;1;1;move,player,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;64;1392;160;80;1;1;move,player,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;160;1408;80;160;1;1;move,player,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;48;1408;72;160;1;1;move,player,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;64;160;1;1;move,player,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;56;160;1;1;move,player,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;48;160;1;1;move,player,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;168;1408;72;160;1;1;move,player,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;176;1408;64;160;1;1;move,player,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;184;1408;56;160;1;1;move,player,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;192;1408;48;160;1;1;move,player,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;64;1392;160;72;1;1;move,player,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;64;1;1;move,player,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;56;1;1;move,player,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;48;1;1;move,player,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1512;160;72;1;1;move,player,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1520;160;64;1;1;move,player,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1528;160;56;1;1;move,player,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1536;160;48;1;1;move,player,0,8,0,0:add,g_playerY,g_playerY,8


Here is an alteration to JRFD's poison demonstration level. Spikes are still visible for demonstration.
Code: Select all
39x50~.1833aa34amaa38amaa38amaa4~~~~0;144;1504;1;0;0~6:mushroom;536;1472;48;32;0;1;playsound,55:activate,poison:sleep,300:activate,cure:sleep,30:turnon,this|6:player;64;1504;160;80;1;1;move,player,0,8,0,0:move,poisonspikes,0,8,0,0:add,g_playerY,g_playerY,8|6;112;1440;64;64;0;1;set,g_playerX,144:set,g_playerY,1504|6:player;48;1408;80;160;1;1;move,player,-8,0,0,0:move,poisonspikes,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;64;1392;160;80;1;1;move,player,0,-8,0,0:move,poisonspikes,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;160;1408;80;160;1;1;move,player,8,0,0,0:move,poisonspikes,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|272:poisonspikes;144;992;2;2;0;;0|165:mushroom;560;1504;1;1;0;400,100,50;0|90;272;1504;-1;1;0;;0;4;0;camera,1,0,0,0,mushroom,0,0,10:dialog,1,Be%20careful%21%20Touch%20a%20poison%20mushroom%20and%20you%20will%20be%20poisoned%20for%205%20seconds%21:camera,1,0,0,0,tree,0,0,10:dialog,1,Touch%20a%20tree%20to%20cure%20yourself%20if%20you%20get%20poisoned.:cameraoff;0|133:tree;816;1504;1;1;0;;0|6:tree;792;1408;48;96;0;1;playsound,47:stoptrigger,mushroom:activate,cure:invis_wait:turnon,this:turnon,mushroom|6:poison;0;1600;16;16;0;1;branch,5,2,g_poisoned,0:exit:move,poisonspikes,0,512,0,0:set,g_poisoned,1|6:cure;16;1600;16;16;0;1;branch,5,2,g_poisoned,1:exit:move,poisonspikes,0,-512,0,0:set,g_poisoned,0|2;1104;1504|6:player;168;1408;72;160;1;1;move,player,8,0,0,0:move,poisonspikes,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;176;1408;64;160;1;1;move,player,8,0,0,0:move,poisonspikes,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;184;1408;56;160;1;1;move,player,8,0,0,0:move,poisonspikes,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;192;1408;48;160;1;1;move,player,8,0,0,0:move,poisonspikes,8,0,0,0:add,g_playerX,g_playerX,8:set,g_F,1|6:player;48;1408;72;160;1;1;move,player,-8,0,0,0:move,poisonspikes,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;64;160;1;1;move,player,-8,0,0,0:move,poisonspikes,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;56;160;1;1;move,player,-8,0,0,0:move,poisonspikes,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;48;1408;48;160;1;1;move,player,-8,0,0,0:move,poisonspikes,-8,0,0,0:sub,g_playerX,g_playerX,8:set,g_F,0|6:player;64;1392;160;72;1;1;move,player,0,-8,0,0:move,poisonspikes,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;64;1;1;move,player,0,-8,0,0:move,poisonspikes,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;56;1;1;move,player,0,-8,0,0:move,poisonspikes,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1392;160;48;1;1;move,player,0,-8,0,0:move,poisonspikes,0,-8,0,0:sub,g_playerY,g_playerY,8|6:player;64;1512;160;72;1;1;move,player,0,8,0,0:move,poisonspikes,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1520;160;64;1;1;move,player,0,8,0,0:move,poisonspikes,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1528;160;56;1;1;move,player,0,8,0,0:move,poisonspikes,0,8,0,0:add,g_playerY,g_playerY,8|6:player;64;1536;160;48;1;1;move,player,0,8,0,0:move,poisonspikes,0,8,0,0:add,g_playerY,g_playerY,8|5;632;1504;0;1;0;movechar,this,0,0,0,-32,1,0:sleep,1:turnon,this~Poison%20proof%20of%20concept~AwesomeJRFD~3~4;0;0~1~1;0~0;0;3~1385498775~0.4
Image
I hang out with Jesus.
Even though I prefer to go by Xero, nobody calls me that it seems.
User avatar
JSlayerXero
The Legacy

 
Posts: 572
Joined: July 27th, 2010, 7:44 am
Location: The Edge of Insanity

Stars Everywhere

Thumbs Up given: 23 times
Thumbs Up received: 37 times

Re: Designer Tips and Tricks

Postby AwesomeJRFD » December 2nd, 2013, 8:41 pm

Better Water

Here's a new edition of Water™ that is very easy to implement in your levels, and uses the same swimming controls as SM63.


Example Level:
Code: Select all
150x50~.4442ad4aa2.27aaad2.113ad2aa5.27aa2ad2.111ad2aa6.27aa3ad3.108ad2aa6ah.27ahaa4ad2.77adaa.27ad2aa7ae.27aa6ad.76aa3.10ab2.15adaa8aeah.26aa6ad2.74abaa3.10adaaac.13ad2aa9ah.26ahaa6ad2.73adaa3.10aa2ad.13ad2aa9ah.26aa8ad2.70ad2aa4.10aa3ab.12ad2aa9ah2.11afahaeah.6ahae4aa7ad2.64ac.5adaa5.10aa4.11ad2aa10ah2.9ah4.2ah2.4ah2.2aeaa9.63aaac.3ab2aa6.10aa5adaa.8ad2aa10ah2.8aeah2ae3ah2aeah3.5ahaa9ad2.25abac.26ab.7acaaad.2adaa7.10aa8acaa.4ad2aa11ah3.6ah3.3aeah.ae3ah4.2aeaa10ad.25abaa.26acaa2ac.3aa4adaa9.10aa10acaa.ad2aa11ag.2af.6aeah2.3afag.ah2ae8aa10ad.16abad2aa.2aa2adaa2ac.6ad.16aa5ac.ac.adaa13.4ah.5aa12adaa13.10aeah.14ah2aeaa11ad.15acaa3adacaa5ac.6aaab.12aaabadaa8acaa14.4ae2ah.3aa25ae.3ah2ag.4ahae.15ahaa12ad3.10ad2acaa12ad.4aa3ad.11adaa25.4ae4.2aeaa24ah.3aeah.6ae8ah3ae.5aa14ad.10aa17.3aa4.3aaad.5acaa26.3aeah.2ae.2aa24ae2.3ahae.11ah4.2ahae.4ahaa13ad2.9aa17ad2aa5acad.adaaad.4acaa26.10aa26.3ah2.23aa15ad.5ad3aa27adaa3acadabaa28.10aa25aeag.3aeah.22ahaa15acaaadaa65ae14aa23ae14.15ae2aa131aeaa.15aa25~.3709ab.3ad3.138ad.4ad9.136ad14.135ad20.126ad7aa5ad2aa9ad3.122aa2ad4aa23.121aa29.121aa29.121aa29.84aa.2ad5.29aa29.84aaad3aa3ad4aa.25aa29.84aaadaa7acadaa.25aa29.84aa12.25aa29.84aa12.25aa29.84aa12.25aa29.84aa12.25aa29.84aa12.23ae2aa29.84aa12.23ae2aa29.84aa12.23ae2aa22aeaa3ae2aa.84aa12.23ae2aa22ae5aaae.84aa12.23ae2aa23ae2aa3ae.84aa12.23ae2aa29.84aa12.23ae2aa29.84aa12.23ae2aa29.84aa12.23ae2aa29.84aa12.25aa29~~600;2448;1256;1;1;-10;;0~0;1872;1088;1;0;0|9:liquid;2080;1504;100,125,300,50,0,0,0,0,-20,-90;13,21;au273;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;0;;1;1;1;0;1|9:waterplat;2112;1216;100,100,100,0;10,1;aE10;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;0;set,g_in_water,1:pl_wait,1,0:set,g_in_water,0;1.1;1;0;0;1|9:liquid;3536;1360;100,125,300,50,0,0,0,0,-20,-90;31,25;au775;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;0;;1;1;1;0;1|2;3552;1416~6:animateLiquid;1840;1600;16;16;0;1;set,a,0:move,liquid,1,0,0,0:sleep,1:add,a,a,1:branch,2,1,a,32:move,liquid,-32,0,0,0:goto,0|6;1840;1024;64;64;0;1;activate,animateLiquid:activate,waterPhysics:set,g_depth,0:set,g_in_water,0|6:waterPhysics;1856;1600;16;16;0;1;branch,5,6,g_in_water,1:branch,4,4,g_depth,0:move,waterplat,0,-6,0,0:sub,g_depth,g_depth,6:sleep,1:goto,0:branch,5,10,g_sink,1:move,waterplat,0,3,0,1:add,g_depth,g_depth,3:goto,12:move,waterplat,0,6,0,1:add,g_depth,g_depth,6:sleep,1:goto,0|6:waterplat;1936;1184;352;16;0;1;set,g_sink,1:invis_wait:set,g_sink,0:turnon,this|6:waterplat;3072;976;960;16;0;1;set,g_sink,1:invis_wait:set,g_sink,0:turnon,this|9:waterplat;3552;1008;100,100,100,0;10,1;aE10;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;0;set,g_in_water,1:pl_wait,1,0:set,g_in_water,0;3;1;0;0;1|40;3584;1504;|40;3648;1504;|40;3712;1504;|40;3776;1504;|40;2112;1504;|40;2176;1504;|40;2048;1504;|46;3960;1264;|44;3152;1488;~Water%20level~AwesomeJRFD~20~11;0;0~1~0;0~0;0;3~1386045675~0.4



Instructions:
Spoiler: show
Step 1:
Place this trigger somewhere in the level:
Code: Select all
llitem:6:waterPhysics;1856;1600;16;16;0;1;branch,5,6,g_in_water,1:branch,4,4,g_depth,0:move,waterplat,0,-4,0,0:sub,g_depth,g_depth,4:sleep,1:goto,0:branch,5,10,g_sink,1:move,waterplat,0,3,0,1:add,g_depth,g_depth,3:goto,12:move,waterplat,0,6,0,1:add,g_depth,g_depth,6:sleep,1:goto,0

Step 2:
Place these on the surface of every body of water (You can change the Xsize); for best results, leave 16px of empty space between the surface of the water and the top of the hitbox:
Code: Select all
llitem:6:waterplat;0;0;320;16;0;1;set,g_sink,1:invis_wait:set,g_sink,0:turnon,this|9:waterplat;160;32;100,100,100,0;10,1;aE10;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;0;set,g_in_water,1:pl_wait,1,0:set,g_in_water,0;1;1;0;0;1

Step 3:
Activate "waterPhysics" with a trigger any time before the player enters a body of water.


Step 4:
If you did the first 3 steps correctly, you can now swim using the same controls as SM63's water. You can also hold down to sink faster.
Image
User avatar
AwesomeJRFD
Honorary Member

 
Posts: 836
Joined: November 11th, 2010, 2:06 pm
Location: Sixteenth Dimension: Hyperspace

Runouw Votes Winner
Best Thread (An Explanation of Triggers) in Runouw Votes Summer 2013

Thumbs Up given: 50 times
Thumbs Up received: 38 times

Re: Designer Tips and Tricks

Postby Dtroid » December 9th, 2013, 3:51 am

Fire bullets out of nowhere

Code: Select all
41x50~.1927aa123~~~~0;136;1504;1;0;0~27;248;1416;0.01;0.01;0;;90;0|27;272;1384;0.01;0.01;0;;90;20|27;296;1352;0.01;0.01;0;;90;40|27;320;1320;0.01;0.01;0;;90;60~My%20Level~~1~1;0;0~1~0;0~0;0;3~978284518~0.4


Set turrets to setting x:0.01, y: 0.01.



Automatic Roll™ / Jumping Delta

There are two ways to do this,and each one has it's good points and bad ones.

1st Way

Code: Select all
150x50~.7050aa450~~~~0;144;1464;1;0;0~22;376;1320|23;288;1248|19;280;1008|3;176;1328;2000;200;45;1~My%20Level~~1~1;0;0~1~1;0~0;0;3~978284842~0.4


2nd Way

Code: Select all
150x50~.7050aa450~~~~0;168;1488;1;0;0|9;320;1472;100,100,100,0;4,2;aa5.2aa;all;0;0;5;300;0;100;0;90;30;0;7;3;5;5;5;5;30;30;2000;128;0;0;r;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;1;;1;1.2;0;0;1~22;336;1504~My%20Level~~1~1;0;0~1~1;0~0;0;3~978285830~0.4


Animated Flying Grock Sprites

Just how do you animate something just like a sprite? This test will tell you!

Paste this into your level:

Code: Select all
llitem:9:i;7502;609;100,100,100,0;6,5;.2ac.3aa3ac.2aa.2aa2.aa.3abaa7;all;0;0;5;300;0;100;0;90;30;0;3;3;5;5;5;5;30;30;128;128;0;0;0;0;3;10;10;30;0;1;1;-;0;1;64;5;0;0;1000;3;0;1;;0.17;0.17;0;0;1|x75:i;7502;627;1;1;0;|74:i;7496;617;0;100,100,100,0;1;0.25;5;move,i,0,99999999,1,0|6:grockanimation;7481;422;15;15;0;1;set,animategr,0:move,i,2,-2,0,0:sleep,1:add,animategr,animategr,1:branch,5,7,animategr,25:goto,1:exit:set,animategr,0:move,i,2,2,0,0:add,animategr,animategr,1:sleep,1:branch,5,14,animategr,25:goto,8:exit:set,animategr,0:move,i,2,-2,0,0:sleep,1:add,animategr,animategr,1:branch,5,21,animategr,10:goto,15:exit:set,animategr,0:move,i,-2,2,0,0:sleep,1:add,animategr,animategr,1:branch,5,28,animategr,10:goto,22:exit:set,animategr,0:move,i,-2,-2,0,0:sleep,1:add,animategr,animategr,1:branch,5,35,animategr,25:goto,29:exit:set,animategr,0:move,i,-2,2,0,0:sleep,1:add,animategr,animategr,1:branch,5,0,animategr,25:goto,36|6;7537;542;64;64;0;1;activate,grockanimation


Make sure to activate "grockanimation". Now,the flying grock sprite isn't a sprite anymore!

If you want the grock to be just flying around,but not being able to kill it,remove the invisible wall containing the smaller grock and the smaller grock behing the sprite.

Note: This movement of the sprite is custom-fit into my level. You could modify it into flying in other ways.
Anyone's welcome to edit this into a better one. You can also add some functions in there,so that when it bounces back,it faces the other side.


Also,may I ask what are ASJFRD's and JSX's Player Coordinates Detector for?
User avatar
Dtroid
The Legacy

 
Posts: 801
Joined: September 5th, 2012, 6:11 am
Location: Above

Level Creator

Thumbs Up given: 344 times
Thumbs Up received: 24 times

Re: Designer Tips and Tricks

Postby JSlayerXero » December 9th, 2013, 8:24 am

One application is poison, as we've both demonstrated. Another was going to be used in my LDC entry, although I might put it on indefinite hold until I can get around to putting it on the portal. It involves a sniper needing to know exactly where you are. I believe the player coordinates detection was also used in SMB 1-1 in LL for the invincibility star, the fireball, and possibly the increased jump height. I'm sure you guys can find other applications for this somehow.
Image
I hang out with Jesus.
Even though I prefer to go by Xero, nobody calls me that it seems.
User avatar
JSlayerXero
The Legacy

 
Posts: 572
Joined: July 27th, 2010, 7:44 am
Location: The Edge of Insanity

Stars Everywhere

Thumbs Up given: 23 times
Thumbs Up received: 37 times

Re: Designer Tips and Tricks

Postby l.m » January 6th, 2014, 12:19 pm

Smooth Manipulation of Items

I don't know if anyone else knows about this / if already posted here, but I'll post anyway. :P

Example:

Code: Select all
24x51~.888ad.23aa.22ahaa.22ahaa.22aeaa.22aeaa.22aeaaad.20adaeaaae.19ahaaaeaaad.19aaab2aa2ag2.16ab4adaa4.cf8.aa6ab2agafaa4.10aa3ab5ag.afaa16ab3ag2~~~6:checkOrb;-25;1273;128;128;0;1;set,g_orbShown,1|5:AOQ-switch;352;1504;0;2;0;branch,5,10,g_orbShown,1:cinemamode:turnoff,AOQ-switch:turnoff,DO-switch:turnoff,DOQ-switch:turnoff,AO-switch:setscale,orb,0.01,0.01,0,1,1,0,0:add,QappearOrb,QappearOrb,1:branch,5,11,QappearOrb,100:goto,6:text,2,%3Cfont%20face%3D%22Trebuchet%20MS%22%3EThe%20orb%20is%20already%20shown.:turnon,AO-switch:turnon,DO-switch:turnon,DOQ-switch:set,g_orbShown,1:set,QappearOrb,0:exit|5:DOQ-switch;416;1504;0;6;0;branch,5,10,g_orbShown,0:cinemamode:turnoff,DOQ-switch:turnoff,DO-switch:turnoff,AOQ-switch:turnoff,AO-switch:setscale,orb,-0.01,-0.01,0,1,1,0,0:add,QdisappOrb,QdisappOrb,1:branch,5,11,QdisappOrb,100:goto,6:text,2,%3Cfont%20face%3D%22Trebuchet%20MS%22%3EThe%20orb%20is%20already%20invisible.:turnon,AO-switch:turnon,DO-switch:turnon,AOQ-switch:set,g_orbShown,0:set,QdisappOrb,0:exit|5:DO-switch;285;1504;0;8;0;branch,5,11,g_orbShown,0:cinemamode:turnoff,DOQ-switch:turnoff,DO-switch:turnoff,AOQ-switch:turnoff,AO-switch:setscale,orb,-0.02,-0.02,0,1,1,0,0:add,disappOrb,disappOrb,1:sleep,1:branch,5,12,disappOrb,50:goto,6:text,2,%3Cfont%20face%3D%22Trebuchet%20MS%22%3EThe%20orb%20is%20already%20invisible.:turnon,AO-switch:turnon,DOQ-switch:turnon,AOQ-switch:set,g_orbShown,0:set,disappOrb,0:exit|5:AO-switch;224;1505;0;3;0;branch,5,11,g_orbShown,1:cinemamode:turnoff,AO-switch:turnoff,DO-switch:turnoff,DOQ-switch:turnoff,AOQ-switch:setscale,orb,0.02,0.02,0,1,1,0,0:add,appearOrb,appearOrb,1:sleep,1:branch,5,12,appearOrb,50:goto,6:text,2,%3Cfont%20face%3D%22Trebuchet%20MS%22%3EThe%20orb%20is%20already%20shown.:turnon,DO-switch:turnon,DOQ-switch:turnon,AOQ-switch:set,g_orbShown,1:set,appearOrb,0:exit~0;53;1364;1;0;0~x901:orb;320;1360;1;1;0;100,100,100,100,255,255|2;584;1488~SIM%20%28Smoothier%20Item%20Manipulating%29~FrozenFire~9~11;0;-150~1~0;0~0;0;3~1389037587~0.4


Instructions:

Spoiler: show
1. Place this trigger in the place you want to be activated in your level.

Code: Select all
llitem:6:activateItem;480;1432;64;64;0;1;c,-%20ITEM%20MANIPULATING%20-%0D%0DInstructions%3A%0D%0D-%20If%20you%20want%2C%20you%20can%20change%20the%20places%20where%20you%20can%20find%20something%20like%20%0D%22any%28Stuff%29%22%3B%0D%0D-%20If%20you%20want%20to%20move%20an%20item%2C%20replace%20the%20Scale%20Item%20function%20with%20the%20Move%20Item%20one%3B%0D%0D-%20Delete%20the%20%22Sleep%201%22%20function%20if%20you%20want%20to%20move/scale%20your%20item%20very%20quickly%3B%0D%0D-%20You%20can%20change%20the%20%22100%22%20number%20in%20the%20Conditional%20function%20%28IF%29%20to%20set%20how%20many%20times%20you%20want%20your%20item%20to%20be%20moved/sized%3B%0D%0D-Done%21%0D%0D---------------%7C%0DFrozenFire%20%7C%0D---------------%7C%0D:setscale,anyItem,0.01,0.01,0,1,1,0,0:add,anyVar,anyVar,1:sleep,1:branch,5,6,anyVar,100:goto,0:exit


2. Place an (changeable) item called "anyItem". (If you want, you can change it, just see the comment in the trigger)

3. ???

4. PROFIT! :awe:


If someone find any errors or bugs in this, comment.
Image
l.m
all light absorbed

 
Posts: 1687
Joined: July 14th, 2011, 12:09 pm
Location: in the shadows i will hide

Razzian Fighter

Thumbs Up given: 136 times
Thumbs Up received: 148 times

Re: Designer Tips and Tricks

Postby Dtroid » January 7th, 2014, 12:26 am

I'm not trying to be mean,but...

I still don't get what you're trying to show here. What's new about making orbs smaller and bigger?
User avatar
Dtroid
The Legacy

 
Posts: 801
Joined: September 5th, 2012, 6:11 am
Location: Above

Level Creator

Thumbs Up given: 344 times
Thumbs Up received: 24 times

PreviousNext

Return to Last Legacy Level Designer