PDA

View Full Version : Event Theory


Violet CLM
Jun 28, 2009, 06:11 PM
I thought I should probably mention over here that I just added another article to JCSref:
<a href="http://www.jazz2online.com/hosted/jcsref/node.php?node=84&mode=id">Event Theory</a>
This article obsolesces all previous articles describing the manufacture of MCEs, including my earlier "MCE's - why and how," although it does rely on existing MCE and Ambient Sound lists. Basically, it's everything I know about MCEs. This article starts from the bottom up and explains JJ2 code, SCEs, crates, and standard and expanded MCEs. By the end you should be able to generate trigger crates of any TriggerID, create a steady stream of big rocks going along a belt, use gun <i>crates</i> in multiplayer safely, or just have any number of things repeatedly fall from the ceiling. It's pretty cool stuff.
(Thanks to Cooba and plunK for beta reading... since then, I've added illustrations, a brief mention of MCE stacking, and a more detailed/helpful final section.)

EvilMike
Jun 28, 2009, 08:55 PM
I think it's a good and informative article but it's also very technical.

The old MCE article doesn't go into much technical detail, but it does directly tell you how to make and use MCEs, and keeps things fairly short. It serves as a good introduction, in other words. So I don't think your old article is really obsolete, just more of an "MCEs for beginners" type of article.

Violet CLM
Jun 28, 2009, 11:32 PM
I suppose that's true. Event Theory does attempt to define all the terminology it uses and explain all the technical details from the ground up, but I suppose some people might just like seeing pictures of basic three-event MCEs, even if there's no explanation why certain Event values work and others don't.

oh and so I wrote another one! This one was rather hasty and it probably shows but I think it's pretty interesting. It basically solves the problem FSP and all those things deal with: if you die, you have to collect each and every coin all over again. <a href="http://www.jazz2online.com/jcsref/node.php?node=85&mode=id">Remembering Triggers</a>

TechnoPauluz
Jun 29, 2009, 07:19 AM
Wow, that looks pretty interesting :eek::rolleyes:

Mycatisbigfoot
Jun 29, 2009, 12:05 PM
Know only if i could put this to use! XD

EvilMike
Jun 29, 2009, 04:05 PM
This is a really small suggestion but I think the articles would be a bit more readable if the paragraphs were indented, or if you put an extra space between the paragraphs. As they are now, they have a bit of a "wall of text" effect.

Violet CLM
Jun 29, 2009, 05:27 PM
Good point. I'm not sure offhand how much control I have over how JCSref displays stuff, but I threw in a bunch of line breaks.
Mycatisbigfoot: All you need is JCS!

Cpp
Jun 30, 2009, 02:30 AM
A very interesting article indeed. I like it how it goes deep into the technical detail. If you have some existing knowledge of the inner workings of jj2 then those details appear most sensible. I cannot say that I had all of the knowledge the article has to offer, but it does explain most of the phenomena I noticed in the past, but never bothered to explore and/or document it.

Another interesting topic are probably the flying springs.

DoubleGJ
Jun 30, 2009, 05:10 AM
Awesome stuff. I made a nifty trick with the speed thing by putting an RF pickup on one side of a line of belts and a One Way (with the suggested addition in JCS.ini) moving it four tiles back. With a bit of covering by layer 3, this makes it appear as a moving line of manufactured ammo, even though it's still the same event moving along the line and then jumping back to the start.

Thanks for your time you spent on writing all this. I'm going to read the Remembering Triggers article now.

Violet CLM
Jun 30, 2009, 10:01 AM
Cpp: Yeah! If you or anyone else have a better understanding of what I'm sort of glossing over as "speed points" I would love to add that in. Right now it feels so incredibly idiosyncratic and I like to think it's related to something else I'm just not thinking about.
Flying springs are something I know nothing about, aside from what you wrote on your site some years back. There was another topic semi-recently which had some other behavior which also caused springs to start flying, possibly horizontal springs, but I can't find it at the moment. But I would be happy to port your old article over to JCSref if you'd like. For that matter, we don't have a word to say about waterwalking...

Cpp
Jun 30, 2009, 12:00 PM
I'm not sure, if that article is even worthy to enter JCSref. I mean it's an old piece of junk I wrote when I was still a newbie. It's basically what Wakeman showed me in a level of his back in 2000 (I think) and I summed it up. Flying springs definitely need a closer look and documentation, its just I never really bothered to explore them in detail. The facts that I do remember are four.

1) You have to place the spring on a tile that has the upper line masked.
2) You have to drop a monitor on the spring for it to start flying.
3) You have to approach the spring from above.
4) The spring will always fly diagonally to the upper left direction.

Urizen
Jul 1, 2009, 06:37 AM
Awesome stuff. I made a nifty trick with the speed thing by putting an RF pickup on one side of a line of belts and a One Way (with the suggested addition in JCS.ini) moving it four tiles back. With a bit of covering by layer 3, this makes it appear as a moving line of manufactured ammo, even though it's still the same event moving along the line and then jumping back to the start.

Thanks for your time you spent on writing all this. I'm going to read the Remembering Triggers article now.

Can i exactly know how your belt trick works? i'm trying to do the very same thing. PM me if you think it woud be tagged as off topic.

Anyways it is a very interesting article and i recommend it to all ;)

DoubleGJ
Jul 1, 2009, 08:49 AM
R O
BBBBB
R = RF ammo +15
B = Belt right (any speed)
O = One way (edited in JCS.ini just as suggested in the article - has the new Speed parameter set as -127)

Now cover the tiles where R and O are with walls in layer 3 so it looks okay. The pickup will go along the belts and once it gets to the O tile, it will reappear back at the start. Covered with those walls, it will look like a line of boxes being transported somewhere.

cooba
Jul 1, 2009, 09:01 AM
You honestly didn't need to edit JCS.ini for that... just take <s>event 127 and make it generate</s> Generator and make it generate event 127.

CrimiClown
Jul 1, 2009, 09:46 AM
When I try that (without the edited JCS), the crate suddenly moves four tiles to the right and then generator-stars appear on it every so often.

cooba
Jul 1, 2009, 10:10 AM
My apologies... it should be event 128.

CrimiClown
Jul 1, 2009, 10:17 AM
My apologies... it should be event 128.

Also, FireSword helped me on this and found out that it moves a bit too much to the left this way, so it should be like this
-R--G
BBBBB
- = Empty space
R = RF box
G = Generator 128
B = Belt Right (speed 1)
The empty space to the left would be required to make sure the box doesn't get stuck in the wall, I guess.

Edit: I just tested it, the space doesn't have to be empty, but a belt should be present right below it anyway. Also, 'magic generator stardust' appears on the belt every now and then, but I guess you could call that unintended extra eyecandy.

Violet CLM
Jul 1, 2009, 11:00 AM
That's because you've got two different objects going along that belt, the RF box and the generator object. The generator begins on the far left of the belt area in a tile with no parameters, so it doesn't generate anything. There's really no reason you'd want to use a generator there because all you're trying for is a belt speed, which I would just haul out MCE Event for and cut the hassle.
(Also, it probably moves too far to the left sometimes because you're moving the objects 127 pixels to the left before they're in the exact center of the tile.)

ETA: it doesn't matter what speed you give the belt events.

plunK
Jul 1, 2009, 02:01 PM
I'm not sure, if that article is even worthy to enter JCSref. I mean it's an old piece of junk I wrote when I was still a newbie. It's basically what Wakeman showed me in a level of his back in 2000 (I think) and I summed it up. Flying springs definitely need a closer look and documentation, its just I never really bothered to explore them in detail. The facts that I do remember are four.

1) You have to place the spring on a tile that has the upper line masked.
2) You have to drop a monitor on the spring for it to start flying.
3) You have to approach the spring from above.
4) The spring will always fly diagonally to the upper left direction.

If you make a wall spring map with full speed wind pushing you into the spring, start a multiplayer match, kill player 2 or use k 2 command in
JJ2+. This should cause the spring to fflip on player one and trap him. then use some sortve powerful recoil weapon(RF pu works best)and hop your way out. Flying spring =o!

Urizen
Jul 2, 2009, 02:40 AM
My apologies... it should be event 128.

It is in fact and it works as described.
Anyways there is a way to send the crate more than 4 squares back?

Violet CLM
Jul 2, 2009, 10:33 AM
Not in one step... you'd need at least two separate belts.

Urizen
Jul 3, 2009, 01:01 AM
The shimmering spawning dust is replaced by a bouncing missle if you put gem crates on the belt, and by a rocket if you put gun barrels instead.
I think there are more hidden glitches like that for different objects you put in the "mechanism".

Violet CLM
Jul 3, 2009, 09:42 AM
<a href="http://www.jazz2online.com/hosted/jcsref/node.php?node=84&mode=id">I refer you to the article I linked to in the first post.</a>

Xobim
Jul 4, 2009, 04:01 AM
Really interesting article you wrote there. I'm going to read the remembering triggers-article as well. Thanks for a good read! :)