Lyon

Discuss how totally awesome Bang! is here.

Moderator: Terryn

Post Reply
User avatar
Commodore
fgsdfs
Posts: 2471
Joined: Wed Mar 12, 2003 5:44 pm
Location: :noitacoL
Contact:

Re: Lyon

Post by Commodore »

SZZT would have gotten a bit more attention if you didn't have to use command line options to open worlds.

As an all in one it will blur the line a bit between the two separate programs.

Anyone for making hybrid worlds?
*POW* *CLANK* *PING*
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: Lyon

Post by Smilymzx »

I am going with what Commodore says, Vote +1 for Hybrid mode!,
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

Funny you guys should mention hybrid modes - by design, it is possible to have whatever size board and element list you want. Board sizes are only fixed when worlds are saved and loaded. The engine does not see ID#04 = Player, only the load/save code needs to know that. It's more like "hey this is a player and this is a ruffian and this is what happens when they snuggle". So theoretically, you could have an element list that contains every single ZZT and Super ZZT element all in one. You could even create your own - they still need to associate to a prefab element in order for the code to recognize it. But you could assign Ruffian to whatever char, default cycle, default color, even name, you want.

If you leave out Bullet but include Tigers, that'll cause a fun crash.

Even with this flexibility, I don't currently allow these changes to be made by the user. It wasn't really coded for these kinds of modifications. It was coded this way to simplify debugging, one change fixes both games :)

For fun, though... maybe after the editor is implemented fully.
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

Big image incoming!

It exports full board screenshots.
Attachments
szztshot.png
(135.51 KiB) Downloaded 12 times
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

I can understand why creating SZZT boards would be difficult. It's hard to fill up such a large space, especially when only a small fraction of it can be seen at a time.
Attachments
legacy.png
(137.4 KiB) Downloaded 12 times
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

You may not decompile, recompile, disassemble, reverse engineer, adapt or create derivative works of the Program or any files or elements thereof.
This shuts everything down.

...

not really :)
User avatar
Quantum P.
Level 17 Accordion Thief
Posts: 1433
Joined: Fri Sep 12, 2003 1:41 am
Location: Edmonds, WA
Contact:

Re: Lyon

Post by Quantum P. »

I'm not terribly worried about Lyon-related lawsuits, but for those who like to understand the law (like myself), here's a couple of links from reputable sources.

Summary: it's complicated.

Edit: changed image size settings.
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

Quantum P. wrote:I'm not terribly worried about Lyon-related lawsuits, but for those who like to understand the law (like myself), here's a couple of links from reputable sources.

Summary: it's complicated.

Edit: changed image size settings.
Wow, that is some excellent information on the subject. It's good to know where the lines are drawn and some precedents.

However, there is this: http://www.classicdosgames.com/files/li ... icense.txt - the license states to remove all previous versions of the game, but they are still all offered there at CDG. Adding another twist, this license is not included at every place that has it available for download. Also, it was written and distributed after the initial distribution of the game.

ZZT 2.0 was used for the disassembly (because I was too lazy to get an executable unarchiver for 3.2). None of the documentation that came with ZZT 2.0 mentions reverse engineering. I downloaded it from a site that did not provide the license mentioned earlier.

Gray area indeed.
User avatar
Quantum P.
Level 17 Accordion Thief
Posts: 1433
Joined: Fri Sep 12, 2003 1:41 am
Location: Edmonds, WA
Contact:

Re: Lyon

Post by Quantum P. »

Nobody's sued Kev Vance yet, so I think you're safe. :keen:
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

Discovering more about the strange events that happen when you delete a stat object using #PUT. Sometimes objects unrelated to the action are affected - I had one object put an empty over another, and it caused a completely different object to become empty with stats!

More on this later.
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

This is basically caused by what you guys call the Koopo Bug, and the rabbit hole is deeper than I originally thought.

ZZT deals with indexes in arrays instead of references. When OOP is executed or behavior is processed, the index is sent, and is not adjusted when the number of stat elements changes (for example, #PUT kills an enemy whose index is less than that of the code being run). This index is also not changed when an action switches boards. Anything that changes boards and subsequently changes stat element data can trigger this bug as well - duplicators are probably the only thing that would cause a noticeable effect.

The order of objects is important. Objects that must run consistently, will not be deleted, and can't risk unforeseen modifications should have a low index. Any time an action is taken on a stat element that deletes a stat element of a lower index can cause strange results.

#DIE and #BECOME are safe because of how they are implemented.
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

Throwing in sound and packing it up for release.
User avatar
Saxxon
the Gargoyle.
Posts: 608
Joined: Tue Jul 25, 2006 10:02 am
Contact:

Re: Lyon

Post by Saxxon »

I've got two OEM fonts to choose from. One is called CP437 and the other is called VGAROM. The notable differences are in the vertical placement of the smileys, the shape of 0, and the shape of O.

I've attached an example of each.

Which looks better? DosBox uses VGAROM for ZZT.
Attachments
VGAROM font
VGAROM font
CP437 font
CP437 font
User avatar
Smilymzx
I hope she made lotsa spaghetti!
Posts: 182
Joined: Sat May 20, 2006 2:58 am
Location: LocacoLocacoL :LoL!

Re: Lyon

Post by Smilymzx »

Saxxon wrote:Which looks better? DosBox uses VGAROM for ZZT.
I'd like the one named VGAROM, It actually is the the real default ASCII Font!
User avatar
Commodore
fgsdfs
Posts: 2471
Joined: Wed Mar 12, 2003 5:44 pm
Location: :noitacoL
Contact:

Re: Lyon

Post by Commodore »

Yeah, I like that one better too.
*POW* *CLANK* *PING*
Post Reply