Jump to content
Opry99er

The Legend of Beryl Reichardt

Recommended Posts

Got some work done on the "Forest" battle sequence today--- I'll try to post a pic when it gets closer to done. :)

Share this post


Link to post
Share on other sites

I've posted the original "Legend of Beryl Reichardt" mission statement (so to speak.) Below that is a list of all the enemies (static and random) the items (static and random)

 

 

*******************************************************************************************************

Characters have the following statistics:

1) HP

2) MP

3) EP

4) Attack

5) Defend

 

 

 

Enemies: (Attrubutes) +X (X=benefit from defeating)

 

Forest/town World***

Scorpions (15 HP) +1 Attack, +2 EP

Skeletons (20 HP) +1 Attack, +2 EP

Giant Spiders (10 HP) +1 Attack +2 EP

**no static characters

 

Desert World***

Sand Sentinels (30 HP) +2 Attack, +3 EP

Giant Spiders (10 HP) +1 Attack, +3 EP

Skeletons (20 HP) +1 Attack, +3 EP

Scorpions (15 HP) +1 Attack, +3 EP

Whirlwinds (25 HP) +1 Attack, +3 EP

*Static characters (uniques)

Doppleslicer (80 HP, Whirlwind Magic) +5 HP, +25 EP, +10 Attack, +10 Defend *universal (affects all characters)

 

Caves World***

Skeletons (20 HP) +1 Attack, +4 EP

Cave Spiders (10 HP) +1 Attack, +4 EP

Cave dwellers (30 HP) +2 Attack, +4 EP

Scorpions (15 HP) +1 Attack, +4 EP

*Static characters (uniques)

Unipanx (100 HP, Melee Magic) +10 HP, +50 EP, +15 Attack, +15 Defend *universal (affects all characters)

 

Dungeon World***

Lost Souls (40 HP) +3 Attack, +5 EP

Skeletons (20 HP) +1 Attack, +5 EP

Cave Spiders (10 HP) +1 Attack, +5 EP

Demagons (50 HP) +3 Attack, +5 EP

Dungeon Scorpions (25 HP) +1 Attack, +5 EP

*Static characters (uniques)

Anifax the black dragon (250 HP, Lightning Magic, Whirlwind Magic, Melee Magic) ***GAME OVER*** great job, you win

 

 

***Items (non-"world"-specific/random)

(((based on who "takes" the item)))

 

Ruby Amulet (+2 HP)

Ruby Ring (+2 MP)

Diamond Amulet (+4 HP)

Diamond Ring (+4 MP)

Red Potion (+5 HP)

Green Potion (+5 MP)

Scroll of Martial Arts (+5 Attack)

Scroll of Meditation (+5 Defend)

Gold stashes (varying amount of gold)

 

 

***Items (world-specific/static)

(((based on who "takes" the item)))

 

***Town/Forest World

1) Elf Key/Elf Treasure Box (containing 100 gold, 5 red potions, and the "password" to move on to the next level)

 

***Desert World

1) Amulet of Wind (increases MP by +20 for the character chosen to wear it)

2) Hero's Sword (once the Doppleslicer is killed, the sword appears-- Only Beryl can wield it. Increases attack by +20---This moves the party to the next level)

3) Magic Key/Magic chest (containg the Magic Wand--- increases MP by 15 universally *all characters benefit)

 

***Cave World

1) Helm of Reichardt (Can only be worn by Beryl, increases Defend by +20

 

***Dungeon World

1) Staff of Reckoning (Increases Attack by +15)

2) Shield of Reichardt (Inreases Defend by +15--- Only Beryl can use)

 

 

Whew!!! That's it for now. Of course the characters will be able to buy items from the store at the beginning of each level... but ONLY at the BEGINNING of each level. Hope this all makes sense!

 

 

Of course MUCH of this will have to be edited... this is just a general outline

 

Owen

Edited by Opry99er

Share this post


Link to post
Share on other sites

Good stuff. I can already see some ways to compress that. I'd probably separate regular monster definitions from the bosses, since the bosses are so different and have such higher attributes and special effects. For the regular monsters, they'd compress very easily with a simple ID and a few digits, plus the name string, like so:

 

F1312Scorpion____

F2412Skeleton____

F3212Giant_Spider

 

These could be compressed even further, but let's see what these do first. Take the first entry - F1312Scorpion____

 

F = This monster is found in the Forest World (alternatively you could number the worlds, making this a 1 instead).

1 = It is the first monster definition for this world, and since you have fewer than 10 monsters per world, you only need a single digit to distinguish them.

- Together "F1" is the unique ID of this monster, because each world has a unique letter, and within that world each monster has a unique number

3 = Hitpoints - note that the actual Hitpoints for this creature is 15. However, you've made all Hitpoints divisible by 5, so we can use that to compress them. What we store is the Hitpoints divided by 5, and when creating the creature we multiply this by 5 to get the real value. Since no regular monster has more than 45 Hitpoints (5 x 9), we can again use a single digit for this. ToD uses this technique a lot in the monster files.

1 = Attack bonus

2 = EP

 

The rest of the encoding is the name of the creature, with _ characters standing in for spaces so that you can see how many are required (up to the length of the longest name is what needs to be allocated).

 

Now, we can be even more clever in storing our monster values. None of the individual digits we've used so far comes even close to the maximum byte value of 255. So we can cut up the byte to let it represent multiple attributes. Once more, ToD leads the way in doing this, which led to some headaches in decoding it as attributes like resistance, mobility, and negotiation were all packed into one number. But to continue, we can cut a byte up into three pieces, the first of which stores the hitpoints, the second the Attack, and the third the EP.

 

As you know, a byte has 8 bits - 00000000. We'll use 4 to store the Hitpoints number, which has a possible range of 1 to 15 (5 to 75), more than enough given your monster list. We'll use two more to store the Attack, which has a range of 1 to 3, and the last two to store the EP, which has a range of 2 to 5. So here's how our byte gets cut up:

 

00 00 0000

EP AT HP

 

The first 4 bits are the easiest to set, because they're the low bits, so they number they represent is the same as the actual number. For the Scorpion the Hitpoints (divided by 5) are 3, so we store the number three in our bits:

 

00 00 0011 = 3

EP AT HP

 

Now the Attack. For this beastie the value is 1, so we'll store the binary representation for 1 in the two bits we set aside for Attack:

 

00 01 0011 = 19

EP AT HP

 

Notice that we can store anything from 0 (00) to 3 (11) for Attack. More than that and we'd need one or more extra bits. This is why planning in advance pays off - you need to know the maximum possible values of EVERY attribute in the game so that you can scope out their space.

 

Back to the number, we need to encode EP in the highest bits. Since this can range from 2 to 5, and we can store 0 to 3 in two bits, we'll store a value and then add 2 to it, so that it falls within the desired range. (0 + 2 is the lowest possible value, 3 + 2 is the highest) The Scorpion has a 2, the lowest value, so we leave it as 0 in the byte:

 

00 01 0011 = 19

EP AT HP

 

So with a single byte of the value 19, we have encoded every attribute of the Scorpion except its ID and its name. To extract these value out the parser needs to do some bit-masking and bit-shifting, but that's easy enough to learn, especially if you've already done assembler.

 

Note that this isn't intended to be a very practical example, as your data is already pretty small and it may not save you much in the long run to add all this bit derivation. But such things are done in a lot of games that have a large number of assets and which need to fit into a small memory footprint. So even if this isn't a literal solution, there are hopefully techniques you can take from it which will have useful application.

Edited by The Codex

Share this post


Link to post
Share on other sites

EXCELLENT! I hope I can implement this stuff in. As you said, my values for this stuff were kept intentionally small... The desire for simplicity is what's driving my variable sets. I've decided to erase the Attack bonuses from the lower-level enemies, as I believe they are unnecessary. They will, however, remain with the bosses. As I stated previously, these values are all "placeholders" so to speak until I get further along in my development. The correct set of information has been posted to my standalone blog... http://www.opry99er.com/the-legend-of-beryl-reichardt-crpg.php

 

I'm trying to keep things as simple as possible for the time being until I am closer to where I need to be as far as implementation. I like your ideas about using a standard equation for breaking down AND rebuilding the string... Also, the idea of setting up a single "letter" or "character" to signify the world is great. That would allow the same enemies on later levels to have higher statistics... That's a nice piece. I'll add that to my current planning. =)

 

Owen

 

Share this post


Link to post
Share on other sites

***Post from Codex***

 

 

I will equivocate and say that the style I like depends on the RPG type. For a combat-centric RPG like ToD, Shining Force, and those types, I think a leaner system is better, with a few primary attributes and very clear skills and effect modifications. For world-based RPGs like The Elder Scrolls series or roguelikes, I favor a more complex system, because the player needs to develop many different kinds of abilities and part of the fun comes from playing with different styles (how far can I get as a low-IQ berserker? as a frail mage? as a clumsy assassin?). Your game seems so far to be very much in the former school, so simplicity should reign, though with enough leeway that the player feels like they are making some strategic growth choices along the way. That's one thing ToD omits - you don't control anything about your party's growth, apart from trying to decide who gets the killing blow and therefore the experience for each monster. A little extra depth keeps the game from being a glorified Gauntlet-with-storyline, but keep it towards the lighter side so that it doesn't over-complicate the dungeoneering, but rather enhances it.

 

By the way, what function does Charm take on in your system? Is there a chance of winning over foes, similar to the ToD negotiation system?

 

 

***

Well, the original post including the "charm" thing was a very early conceptualization of this game. I might still use that variable, but it's not on the plate FIRST. It was originally intended to be a function that would "distract" the lower level enemies. =) Basically, charm would keep the "interrupts" from happening... From the other post, I talked about how interrupts happen

 

Since this is a turn based battle sequence, here's a possible order of attack:

 

-Beryl

-Reptoslicer

-Skylar

-Markus

-Sand Sentinel

-Beryl

-Reptoslicer

***Interrupt -Sand Sentinel

-Skylar

***Interrupt -Sand Sentinel

 

The higher the charm, the less likely the enemy will interrupt your turn. =)

Share this post


Link to post
Share on other sites

I have to say, I just spent about 45 minutes playing Tunnels of Doom Reboot by Codex here. Holy crap! I had forgotten how great this game conversion was!!! It really gives me alot to think about. If I can ever get the ToD toolkit working, I'll port Beryl Reichardt over and post it here. =) Thanks to Howard for giving me his time last night as well, on a Skype session helping me install JAVA properly on my computer. Without that, ToDR would still be a memory in my head. Now, I'm more excited than ever to make this RPG happen. I'll have some more updates very soon... I've also started my own standalone blog for this game as well... if any of you want to keep up with the mental process during this project, you can check it out there. So far I only have 2 posts, as it's only been up for a day and a half, but I'll soon have many more, and probably much more in depth than I will go into here... I will be working out my game there and bringing problems and ideas here for comments and additional suggestion. This is my development forum, the blog is my diary. =) BTW, Adamantyr... I read about 10 of your entries this evening from Realms of Antiquity. Fascinating stuff, mate. You really have a masterpiece brewing there!

 

Owen

Share this post


Link to post
Share on other sites

Updates:

Discovered a few things in playing FFIII and ToDR this morning... I am going to need to rethink the major attributes of my characters... There is a need, I think, to factor in "Max" values for attributes. These factors may incrementally rise based upon the "world" the character has reached. Since this is a "linear" RPG, the maximum values will not be too tough to raise as the game progresses. Of course a couple of the items will raise max levels... And as a new high level enemy is beaten, max values for the entire party will rise. Each character will start with different max values, as each character has built-in strengths/weaknesses. I'll post some new info in a bit. :)

Share this post


Link to post
Share on other sites

A sliding cap on attributes is a good technique to discourage "scumming". This is the venerable dungeoning art of killing tons of low-level monsters early in the game to get the characters to a point where later monsters are no threat. If you cap the player at each world, then you ensure that they're not too tough for the next world.

 

An alternate strategem is to award experience as a dimishing curve against the player level. So say if a level 1 player kills a level 1 monster, they get 10 experience. But a level 2 player only gets 5, and a level 3 only 2, and beyond that there is no reward. That also stops the player from reaching godhood by stomping rats. :)

Share this post


Link to post
Share on other sites

Yea man... That's precisely the reason for doing that. I noticed in playing Faxanadu on the NES that building a player up was pretty tough, but gold was unlimited, as you could kill many monsters as many times as you wanted... So I've also started working on a concept to limit gold retrieval as well.... Aside from the caches of gold in treasure chests and the random caches found in the caves and dungeons, your enemies will drop gold on occasion as well once they are killed. Unlike Faxanadu though, I intend to limit the number of times you can kill a monster or enemy to 1. That way you cannot sit in the dungeon, going back and forth between rooms and jack up your gold and EP. This will mean that each time a room or area is cleared, I will have to find a way to flag that room as "do not generate more enemies" if re-entered. This is getting pretty hairy. :). ToD did that too, didn't it? Once an area is cleared, it did not re-stock with enemies or items... Of course, there was the fabled "ToD fountain" which you could use as much as you wanted, but risked a bad experience as well. Found one in ToDR last night too. :)

Edited by Opry99er

Share this post


Link to post
Share on other sites

Yes, ToD rooms (and ToDR ones) are pre-stocked at creation time and never get new monsters or items after the player clears them. I did add gold drops for monsters to spice things up, but usually in ToD gold isn't a problem after the first few levels anyway (unless you blow it all on living statues). That'll be somewhat offset in The Black Candle by the introduction of the new Thief monster. :)

 

If you're doing things on the fly instead of in advance, you could add a "visited" flag to a room that tells it not to regenerate its contents but to keep whatever it stocked the first time (which becomes nothing after the player cleans it out).

Share this post


Link to post
Share on other sites

That's going to have to be the case, I think.... Generate an entire world at a time... The load time between worlds will take a moment, but I have some very cool music ideas to play during load time. I found that with Honeycomb Rapture, I could run a soundlist while XB was loading up the new sections. :). The music I'm coming up with for this game is quite fun and very "RPG-y". Each world has it's own music and each high-level boss has it's own music score as well. Ends up being 7 pieces of music total, and with the player Matthew wrote, it'll be possible to implement them all, I believe. We will see. And yea, Codex--- I'll definitely be generating the whole world at once... But 1 world at a time. :)

Share this post


Link to post
Share on other sites

BTW--- you ever get that ToD version of Beryl downloaded? :)

 

I've asked for the help of the list server getting the ToD editor working... Hopefully I can complete the Beryl ToD game done

Edited by Opry99er

Share this post


Link to post
Share on other sites

Haven't grabbed Beryl yet, but will. I'm going to get Lemonade Stand too, just noticed it's available for download.

 

I got ToD Editor to work in one emulator, let me look at it again when I get home. I used it as part of my reverse engineering of the original game. If I recall I had to use an out-of-date emulator, because the recent version had changes which made it fail. I think it was an old version of MESS, but let me check.

Share this post


Link to post
Share on other sites

Thanks Codex! It's really been a hassle trying to get this program to run in ANY current emulators. There is a discussion going on at the list right now about re-writing the Editor. I advocate a PC utility (maybe in Java??) that allows the user to edit EVERY part of the game. It would kick out a TIFILES version of a game file, and BOOM, all good. I told them that you have more knowledge than just about anyone of the data structure of the ToD game files. If it were possible, do you think it would be reasonable to do it in Java?

Share this post


Link to post
Share on other sites

OK, I spent all day... .WASTED all day trying to get this *&**%$## Tunnels of Doom Editor running. I have 300 different versions of it and 2 emulators, and no dice. I'm completely pissed off at the whole thing. Win99/4a, I'm sure, is a great program... But I can't make it do s***!!!! It doesn't recognize a single thing I try to do, and on top of that, Classic99 doesn't support direct disk sector access, so I'm left with no way to do this thing. I remember now why I never completed the Beryl ToD game. So... what's the lesson to learn from this??? DONT TRY TO USE THE TOD EDITOR UNLESS YOU ARE ON THE REAL HARDWARE!!!!! If you do, you'll end up with less hair than you started with, and your language will become more and more colorful as the day goes on. Done with it, screw it, I'm going back to the REAL RPG I'm working on... not an edit. But now I'm so frustrated, I don't even have the patience to look at code. Guess I'll go eat a taco or grab a soda from the fountain down on the corner. Howard, if you're listening... I would love to hear how you were able to use the ToD editor in emulation... cuz where I'm sitting, it is more likely that I get struck by lightning and have a meteor fall on me at the same time than it is to make this thing work. Sorry for the tone of this message, I just had to vent. =) I feel better now. =)

 

 

Owen

 

 

Share this post


Link to post
Share on other sites

Yes, sorry, I couldn't find the old online discussion I had a few years back where this guy and I worked out what emulator ran TOD Editor. I know it was an out-of-date one even back then, probably something no longer supported like V9t9. I can't figure out how to load it in Classic99 or MESS now either. Let me take a look at your game file via my TOD Toolkit and see what I find. Check your email soon. :)

Share this post


Link to post
Share on other sites

Hey thanks alot man. =) And as I mentioned before, I didn't finish the edits. Many of the item "tolerances" are way off... By that I mean the amount of time allowed to find an item before it gets destroyed. I'll send you a .DSK file of the game so you can throw it into your toolkit. =)

Share this post


Link to post
Share on other sites

I just posted a couple new posts to the "Beryl Reichardt" blog on my website... I mentioned a few people on this thread who have helped me understand this data parsing... wonder if you can guess who they were? :). In any case, I've been studying alot of this hex data that Codex's ToD toolkit kicked out... Found a ton of quest items and enemies I had completely forgotten about... I was able to view all the graphics I had created too... I am inspired! :). I'll be re-doing all those graphics and implementing them into the game. I probably won't post a bunch tonight, as I have a show from 8 to 11--- maybe after. :)

Share this post


Link to post
Share on other sites

Here's the new screen... Forest World battle screen. I actually got the new graphics from my old ToD game that Codex was able to break down. I now have the graphics I created back then and here's the new stuff. A fountain and the enemy... The "McElwain Monk" . =)

 

berforest.jpg

 

 

Hope you dig

Share this post


Link to post
Share on other sites

Hey thanks Karsten!! I really appreciate that. If you've kept up with this thread, the game is starting to really take shape--- at least as far as the whole engine-side of it goes.... As I study the old ToD games and learn how the game worked, I see many things I like and many I do not like. As far as what I DO like, the data parsing and implementation as well as the methodology of creating entire "levels" at a time are all awesome points to study and learn from. The things I didn't like are really just what's "not" there. I think I will take a more detailed approach to the enemies' statistics and "unique" items, which I have written about above. Also, I will not be implementing the "quest item move limit" which destroys quest items if it takes you too long to find them. In any case, the way the whole thing will operate is drastically different from ToD or Old Dark Cave, but I've learned alot from these games and it has made my knowledge of the "genre" richer. 8)

Edited by Opry99er

Share this post


Link to post
Share on other sites

Looking real good man! You wasted no time getting your graphics ported, and the result is worth it. You've got some really inspired monster designs in your game and I'm glad they're coming over into the new version.

Share this post


Link to post
Share on other sites

Thanks Codex!!! Yea, many many more to come my friend... I've converted about 3/4 of all the graphics already.... Spent a couple hours with Karsten's PATTERNS program and the graphic transfers from the original ToD game. Thanks for hooking me up with that program, man... I had forgotten how much work went into that original ToD game. I don't remember exactly how much time I spent on it, but it was at least 50-60 hours.... Would have been done in about 5 if I had access to a better editor, but (just as you know) the Asgard editor sucks. I mean--- it's the absolute BEST ToD editor out there currently, but it's by default... It's the ONLY editor. :)

Share this post


Link to post
Share on other sites

Well, I've done very little coding lately... Been doing the planning to make sure everything goes the way I want it to. Here's a couple little graphics for the "stairs" in the game. Did these last night while looking through the old graphics from the Beryl ToD game. =) I'll probably modify these a little bit, but here's the pix. Enjoy

 

 

stairs.jpg

 

Stairs down

Stairs up.

 

 

 

<<edit>>

These might be the standard ToD stairs... If they are, I'm disappointed-- I thought I found some cool stuff I did a year ago... Might have just been leftover graphics. Blah.

 

icon_razz.gif

Edited by Opry99er

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...