Jump to content

Mord

Members
  • Content Count

    2,986
  • Joined

  • Last visited

  • Days Won

    2

Blog Entries posted by Mord

  1. Mord
    Ok, this should do for another micro-version.
     
    In this version I've redone the status bar. In this game the only things it will need is the player's magic/power bar, so I've removed the extra things. The color of the status bar (the blue part) will actually serve a purpose to indicate to the player when they step into a magic field. I'll be changing the default color to probably a gray color to indicate the absence of a magic field. This will be a function of room AI which I will be adding in a bit later. Also, I backported the cycle 73 HMOVE code I wrote for the new Action RPG code base which allows me to pull off the status bar's repositioning without the ugly h-bars. One sprite is repositioned right before the start of the power bar, the second is repositioned immediately following it. I do notice the gate of the castle seems to be moved. I don't recall changing it's coordinates in the init code so I'm guessing there's an issue with using the cycle 73 code. I'll look into that more and hopefully have it figured out and fixed by the next version.
     
    The status bar overall is vertically more compact because of these changes. This means the game field can be larger, which is something I've been meaning to do since before v0.018.
     
    Otherwise, all the other changes in the code are are speed optimizations. In some cases I only trimmed a few cycles off. In others I found entirely different ways to do things or realized a couple things were entirely pointless! (I use to zero both hardware sprites at the end of each frame up until now. Not necessary since if I just point their ItemSlot to FF, the code assumes they're empty.)
     
    I'm not entirely sure what I'm going to do in the next version. It's a toss up between re-adjusting/re-naming the item slots or redoing the room loader. Either of those two options will probably be time consuming.
     

  2. Mord
    Oh before I forget, here's the source for version 0.019. (20091113)
     
    I've already started in on optimizing what's already there. Some things run a lot faster, other things have waste trimmed.
     
    After I take another look through the code for "easy" optimizations, I'm probably going to start hacking away at the Status Bar. The only thing that Maze Realms is going to need is the player's power/magic bar so everything else is going to be removed. At the same time, I'll be centering the power bar since there will be no reason to keep it on the side of the screen.
     
    Previous source code versions, etc, are also available on my website.
  3. Mord
    Ok here's an updated rom for Maze Realms. (Previously "Action RPG")
     
    Mostly this just fixes up a few scanline glitch scenarios and an update to the held-object/drop-object routines for use in the new direction this old code base is taking. (I'll be taking Action RPG in a different direction later. I figure it would be best for me to keep working on this code now that I'm familiar with it again along with getting a bunch of ideas for it!)
     
    At any rate, the file names are being changed to reflect release date of the rom in such a way that all the roms will line up in a directory on their own! Year/month/day format. 20071027 was when I first released version 0.018. And then went on code vacation for over a year.
     
    Still using the same old Test Realm for now.
     
    I have to see about making the code run faster. Code can take too long as it is in some situations. I'm not sure if I'll work on that next or if I'll turn my attention to the display to update the status bar.
  4. Mord
    I fixed the glitch mentioned in the last post soon after the update. Not entirely sure what was going on but the bug was caused by good old copy pasta. It was testing one condition then setting a totally different one based on it and voila. Key-to-Heart glitch.
     
    Anyway, I likely won't do the next part today as I'm a bit busy with other chores, but the next task will be expanding the drop-item code so that it can detect when an object is out of bounds when dropped - and if dropped while out of bounds, it will be dropped in the proper room. If the exit is dead or wrap-around to the same room, the drop code will simply drop the object to the other side. (Currently I believe if I dropped an object out of bounds, it would become unavailable in the game!)
     
    This will work for the vast majority of rooms but it brings a little snag into play. what if you push the key outside of a castle? Right now for when the player exits, a special routine will run to move them in front of the gate. (Generally the Gate's own AI will do the check by looking for the character's position on the screen.) I think I can take care of this with a similar routine in the room loader. Dropping the object outside of a castle (or dungeon really, etc) will cause it to drop to the side of the screen in a place where the player would normally set off some AI to reposition them. Since it doesn't really matter where the object is in the room until the player enters it, we can do a similar trick in the room bank itself.
     
    That'll be the next trick AFTER the initial drop code modification. After that I'll consider "version 0.019" done. However I won't be calling it that. After reading over a thread that touched on WIP filenames, I've decided to change the format to a "title-year-mm-dd.bin" format. That way all the WIP roms will line themselves up.
     
    I'll post the old version 0.018 (renamed) and the new version at the same time for people who want to do comparisons without digging through the blog archive for the old one or going to my website to get it.
     
    Oh, I also think I have an idea for the life bar which will be redone in the following version. It'll be changed to a power bar instead and might implement a similar "powers" system to that used in E.T. In that your position on the screen will enable you to activate different powers. The powers that will be available, how the power bar is used, and how it will be notified to the player however won't be anything like it. I'm thinking of a bunch of ideas that would go well with this kind of setup and how to implement them in the game, but right now I'm too tired to actually write them down. I'm sure I'll remember them.
     
    *update*
     
    Finally finished modifying the drop code to handle out-of-bounds objects. Took a lot longer than it should have due to me typing on a branch by leaving out the space between the opcode and the label. This didn't cause an error as far as I could see. I'm guessing it interpretted the entire thing as a label or something... Anyway, been up too long this morning and have to get some sleep before work so I'll clean things up a bit tomorrow and try to post the new version.
  5. Mord
    I was discussing/ranting to nobody in particular on irc about how I'd go about doing a colecovision cartridge release, to get an idea of how much money it'd cost me to pull it off, I ended the rant with:
     
     
    [19:55] <Mord> then take a large gold brick and put it in as a bonus since by then the gold brick will be cheap compared to everything else that's gone into the design.
    [19:56] <Mordiechu> but everyone will be going "ooo, gold brick. must buy~"
     
    That aside, it'd still be fun to finally get around to finishing a game some day.
     
    Currently working more on Maze Realms. Trying to fix the glitch when pushing against a wall and trying to exit the room. Currently in most cases you will get stuck unless you're leaving the left side. I'm not entirely sure why that's the case just yet but it's obviously something to do with the collision code.
     
     
    *update*
     
    Finally had a moment of inspiration and fixed it. Pretty damned simple too. An evening otherwise wasted.
     
    Trying to fix the out-of-bounds held object glitch now. My first attempt seems to ahve worked, but there's an unusual side effect in the heart room. Should only ever be 4 in there. But when you have the key held and push it out of bounds, a 5th one shows up. X_X Trying to track the cause down but likely won't get it done this morning.
  6. Mord
    It took a few days longer than originally planned, but I finally finished reformatting the old Action RPG code and it's dubbed Maze Realms now. Action RPG has a different code base that I haven't gotten too far with just yet. It's all good tho.
     
    So now that the insane levels of potentially inaccurate comments and the like are taken out, I've started the second phase. That being fixing some of the bugs I spotted while I went through the first time as well as reworking some of the existing code.
     
    For instance in Maze Realms there's no need to have a delayed-press-and-release to drop a held item so I took it out. I'll be needing that kind of code for Action RPG later but I'll just copy/paste it over from the older backups. There was also a couple of instances where I found buggy non-bugs... or would that be non-buggy bugs?
     
    It was a few instances of "lda $FF" being used instead of the intended "lda #$FF". It just happened to be that address location $FF held value #$F1. For the purposes of the code, it just needed to have a value greater than $80 that was not $F0. $F1 fit the bill so the code acted as it was suppose to. Glad I caught that as I was reading through it otherwise it could have really had me stumped farther down the road.
     
    The fire button now simply drops held objects. It has the side effect that a holdable object can be passed through without picking it up if you keep the fire button pressed. I wasn't sure if I liked that or not, but I can't really see the harm in leaving it that way. That only works if the object can be held and moved. Maze Realms, like Action RPG, will have instant-use items that activate on touch. Holding the fire button down won't affect them. It could be altered so all objects pass through the player, but we'll see how it goes. It'll just need a quick short-circuit based on the fire button's position in the object's collision code.
     
    Otherwise I fixed a graphic glitch in the first castle room where an extra line would be generated if the player tried moving up past the closed gate. The kernel is pretty tight in some instances and in at least one case there's no room for cycle penalties. The glitch occurred because the castle gate's graphic was lying over a page boundary. That made one particular scanline case use too much time, generating an extra line in the process.
     
    The next big scanline glitch occurs when you try to push a held object through the left wall. This causes a problem where the object's X position wraps around and the 2600 thinks it's over 200. The sprite positioner ends up waiting a LONG time since 200+ is outside the allowable 0-159 range and an extra scanline is generated. I'll be fixing that as well before I release the next rom. I already know how I'll be doing it.
     
    So yeah, the next version is just going to be a less buggy version of what I've already released. >_>
     
    After that's done, I'll be fiddling with the display code and changing the Status menu to be something far FAR simpler. Of all the things on it, the only thing I really want to keep will be the status bar. And if that's all I'm keeping, I'll probably consider centering it as well.
  7. Mord
    Took a while for me to get to this point since I was also mapping out 7800 games, listening to music, attempting to design a few big complicated and likely unworkable 7800 cartridge formats, and various other little projects. After all that, I finally have the source code for Maze Realms (The old Action RPG code base) reformatted and compiling.
     
    It doesn't FUNCTION correctly however since I ripped various things out as I went. That's the next phase.
     
    Have to clarify in my head again exactly what the new screen dimensions are going to be since I shrunk and simplified the status bar. I'm still thinking on exactly how this game will work but I've fished up a few ideas. A bit of random placement should certainly help the replayability factor as well.
     
    Oh well, here's hoping I can still get the current code to compile AND run properly by halloween! (Not that it'll be finished by then of course but it's a good goal to aim for!)
  8. Mord
    While sitting on #jagware on irc.worldnet.net tonight I started thinking about the old code base I had for Action RPG.
     
    (I haven't been able to really sit down and code all this time on the new code base all the same)
     
    Anyway rather than just let that bit rot I was thinking of dusting off Version 0.018 (The last 'stable' version) and continuing that in a different direction. Essentially I'll fix up a couple of the object boundary problems still present in it (noticable if you carry the key off the screen in some directions!) then I'll reconstruct the status bar for something else and turn this into a large maze style game.
     
    I'm still trying to decide how that maze game should operate overall. I have a couple ideas, but I'm not sure if they'll work as well as I think it will.
     
    Hopefully this means I'll start posting roms and stuff again "soon". Wait. My "soon" can easily translate into 6 months... ok "Sooner" than "soon". It's mid-september right now. Let's see if I can pull off productive stuff again by halloween. (no final result by then, but hopefully it'll be well on the way!)
  9. Mord
    That's it! No more purchases until September!
     
    It's a shame there's so many deals one, but if I want to make sure I can go somewhere on vacation next month, I seriously gotta button down the budget for the next few weeks.
  10. Mord
    Maybe I'm spending too much effort on something that's really so small overall. While the rest of the game play area will likely resemble standard 2 color mazes and the like, the top section I was trying to go for a horizon type of effect. I may have to impliment this slightly differently in the end anyway although the way it works right now you set the hue and it'll handle the shading. Both for the floor and sky. This would have an odd effect on underground places however where just a solid color would suffice.
     
    *edit*
     
    Also, at this point I'm completely using the cycle73 routine.
  11. Mord
    I downloaded the new updated SAP archive the other day and had the tunes playing on random/looping.
     
    Then I went to work and forgot it was still playing. I use Winamp for these as I tend to prefer having a one stop shop for my audio - as a result I download winamp plugins whenever I find I need one.
     
    Anyway. When I got home the computer was sluggish. I opened up task manager and found Winamp was using 99% of the system resources.
  12. Mord
    Well, I suppose it's not THAT bad. It's just annoying as heck to work out a usable cycle 73 hmove routine. The best I've worked out so far is to use a table, which of course sacrifices about 160 bytes of rom for the table. Assuming that hitting RESPx at cycle 76 counts as the end of a scanline and not the beginning of the next then the table I have written should work out... hopefully.
     
    Not really in the mood to muck with it right now beyond inserting the table into the rom.
     
    This is the table of values I've come up with, where the top 4 bits hold the finetuning for the HMOVE and the lower 4 bits hold the loop counter needed to position the RESPx to the proper cycle. Tried to set it up so the routine would have time to do a few extra little things prior to starting the loop if needed. Not the best solution I'm sure, assuming it even works, but for now it'll have to do.
     

    TABLE_Cycle73 ; Given X 0-159, it will retrieve the fine/coarse adjustment. .byte $10, $00, $F0, $E0, $D0, $C0, $B0, $A0, $90, $80 .byte $61, $51, $41, $31, $21, $11, $01, $F1, $E1, $D1, $C1, $B1, $A1, $91, $81 .byte $62, $52, $42, $32, $22, $12, $02, $F2, $E2, $D2, $C2, $B2, $A2, $92, $82 .byte $63, $53, $43, $33, $23, $13, $03, $F3, $E3, $D3, $C3, $B3, $A3, $93, $83 .byte $64, $54, $44, $34, $24, $14, $04, $F4, $E4, $D4, $C4, $B4, $A4, $94, $84 .byte $65, $55, $45, $35, $25, $15, $05, $F5, $E5, $D5, $C5, $B5, $A5, $95, $85 .byte $66, $56, $46, $36, $26, $16, $06, $F6, $E6, $D6, $C6, $B6, $A6, $96, $86 .byte $67, $57, $47, $37, $27, $17, $07, $F7, $E7, $D7, $C7, $B7, $A7, $97, $87 .byte $68, $58, $48, $38, $28, $18, $08, $F8, $E8, $D8, $C8, $B8, $A8, $98, $88 .byte $69, $59, $49, $39, $29, $19, $09, $F9, $E9, $D9, $C9, $B9, $A9, $99, $89 .byte $6A, $5A, $4A, $3A, $2A, $1A, $0A, $FA, $EA, $DA, $CA, $BA, $AA, $9A, $8A
  13. Mord
    Finally took the time to examine the little digital camera I bought back in 2006ish. I have a LOT more than the little bits shown in here, but that would require effort to unpack out of boxes, etc.
  14. Mord
    And I totally trounced the boss. Even without using the gamebreaking skill combo of Armageddon + Victory Cry.
     
    Armageddon is a fusion spell you can use if you have Helel and Satan personas active, one of them equipped. For 999 SP (ie: everything you have, and only if you're at max level) you can instantly deal 9999 damage to all enemies. The monsters can't resist or dodge it. So it's basically an instant win skill. Even the Reaper can be one-shotted with the skill. Of course, this drains you of all your SP. This is where Victory Cry comes in, which you have to use fusion to push onto one of the two above personas. Victory Cry restores your HP AND SP to max at the end of battle.
     
    So basically once you have this skill combo you go to a battle, use Armageddon, obtain xp/gold/etc, then Victory Cry instantly refills all the 999 SP you lost so you're ready for the next battle. All YOU have to do is make sure you're not surprised by the enemies so you act first. Since you have to be max level anyway, this game breaking combo is only really good to help you level up your personas at the end of the game and help get your other teammates to lv99. But still. Armageddon DOES work on the last boss! But you have to be careful since that boss starts using a Moonlight Cloak skill near the end which reflects everything... including Armageddon I believe. (so getting 9999 damage reflected back to you isn't wise if you're not careful.)
     
     
    Anyway. Game is over. I started a newgame+ which allows me to start with old equipment and social stats of the old game. I just have to redo the social links. I don't know if I'm going to actually play through that tho. At least not now. Not sure what I'm going to play next, but I'm going retro for a while. Several SMS and NES games I'd like to play and add to my list, such as Wonderboy in Monsterland and Castlevania III.
  15. Mord
    I'm on the final month for Persona 3 FES now. I won't likely get max social links, but I knew that a long time ago. Still going to try to raise them as much as possible however. I'm also going to be going to Tartarus to run everyone ragged every 2-3 days when everyone's feeling ok. Basically will run one party ragged, then run the rest ragged, then I'm going to solo on my own for a while in the lower blocks for money. I'll then try to fuse up all my personas which is getting expensive now since I have a couple personas that cost almost 500k yen to pull out of the compendium! While I can't get 100% personas unlocked due to not getting all the social links maxed, I'm going to try to get as close to it as I can.
     
    ... And since this is a long weekend coming up, and me with nothing planned anyway, I'm going to see if I can finish the game by monday. So long as I don't lose much time from pointless defeats after hours of exploring. ... Again.
     
    After this game is cleared, I think I'm going to go more retro for a few games. Wonderboy in Monsterland, Castlevania III, and probably one more from that era before I dive into the next less retro game.
  16. Mord
    The inventory bar is close to complete. I have this twisted idea to change the background color from black to an alternating dark gray. There should be sufficient cycles, but I'm heading to bed now. I'll get that done either later today or Friday. Before moving on to the main middle section, I still have to work out some details for how I want it to look. I have some ideas but they're not set in stone just yet.
     
    I should probably read over the old design notes I have and update it appropriately.
  17. Mord
    There's little more to my life these days it seems other than those thing in the topic. .... Well, if you don't count sleep and work.
     
    Persona 3 FES is moving along at a nice pace this weekend. I got up to the top of the 4th block of Tartarus and the social links are coming along fine. I may not max them out by the end of the game but that isn't overly important as far as my Games Complete list is concerned. But I will try to get them there all the same.
     
    I haven't done much with the code this week until this morning, where I added the first portion of the bottom status bar. It's good enough to display 3 objects for inventory although right now it doesn't display anything but a solid square as a placeholder. I was toying with the idea of having the central object being the "Active" object, but the odds are that's going to be tossed out in favor of all 3 objects being permanently active. While I'm sure I could do it in the code, it would be a pain in the ascii to have some sort of convenient way to switch the active object.
     
    Possible ideas I thought up for it included:
     
    1. Require a second joystick. (Not convenient, plus has same problem as #2.)
    2. Require a keypad for controller 2. (Possibly convenient but I plan on supporting the atarivox with it later.)
    3. Use console switches. (I don't particularly like this idea for something that might need lots of switching.)
     
    So when it came down to it I figured... why bother or worry about it? Generally conditions must be met for the
    objects to function anyway, so I'll just plan the game around that and any objects that are obviously overlapping in function would just force the player to drop whatever they did have before adding it to the inventory. (Like primary weapon for instance, or boots. etc.)
     
    Another thing I have to work on is getting rid of annoying blackbars wherever possible! There are two at the top of the inventory bar for instance. And with those I can probably write a modified version of the normal positionsprite routine to do a cycle 74 hmove. Those sprites are always going to be in constant positions after all! ... Heck, I can probably hardcode it so I position both of the sprites in a single scanline and still have time to hmove it at the end.
     
    That'll be my goal for tonight I guess.
     
    *update*
     
    I'll need a new goal for tonight. I've got the cycle 73-74 thing down for the bottom bar. Hardcoded so that I get both P0 and P1 done in a single scanline.
  18. Mord
    And it's mostly done. I might be able to do some more alterations to it and I still need to add the repositioning for the players to be used in the main game play section underneath. That's the next thing I'll be working on.
     
    This bar only has a life meter for the player on the left side, and the "boss hp" on the right. In this game most bosses will just need to be tagged so many times to defeat them, although your stats and equipment would make it easier or harder to do that.
     
    There will be another status bar on the bottom of the screen which will display inventory and a few other things, depending on the situation. I'll likely work on that before I get to the actual game play section in the middle.
  19. Mord
    Have tonight off since I wanted to hang out with parents while they were in town. They're leaving again tomorrow. So for the rest of the night I have plans to split between Persona 3, and coding Action RPG. I'm actually writing code for it!
     
    I drew up a hopeful goal for the screen display earlier in the week. Most of it's focused on differences for the status bar on top of the screen, the very top portion of the game map, as well as adding a secondary "inventory" bar along the bottom.
     
    Currently focusing on the top status bar.
  20. Mord
    Persona 3 FES is probably going to be shafted again as I'm having trouble really getting into the game. I'm not giving up on it just yet of course, as I haven't gotten into it too much yet and still have more characters to meet etc.
     
    However.
     
    I own War Song on the genesis now, and I've been dying to play through that for the longest time. I played it a few times on my cousin's genesis in the past, and really enjoyed it. I never did play it enough to finish it however, or even get close to finishing it.
     
    The problem right now is that my TV doesn't seem to like RF adapters of any sort. Whatever I hook up to the RCA connector gives almost no sound and a blurry fuzzy picture. At first I thought it was the consoles, but noticed all of them would react that way, when I know they'd work just fine on my older 13" TV I use to have. So I ordered some A/V cables for the genesis. If all goes well, I'll be able to bypass the problem and get a good picture.
     
    The cables should arrive next week or the following week, so I have until then to get absorbed into Persona 3. Might happen. Might get shelved again.
     
     
     
    Also, Space Olympics by The Lonely Island rocks.
  21. Mord
    I've blasted my way through Ys The Ark of Napishtim. I like how everything is voiced in the game, although I'm sure that's a big reason why the game feels so short.
     
    Next up, will be Persona 3 FES. I've started this one a couple of times but I always got distracted by other games. Then when I finally sat back down to it, I was completely lost so would start over. X_X
     
    Going to give it a shot again and since there aren't really any games I'm aware of being released soon that I'm going to want to instantly pick up, I should be able to stay on track this time.
  22. Mord
    I'm finished with Ar Tonelico II. I wish the game didn't end as I really liked it despite the l33t spellchecker editing job and the bug with Raki in the NA release.
     
    Next up, I've chosen to re-complete Ys The Ark of Napishtim for my Games Complete list. I started in on it a couple weeks ago actually, although I've only been playing on the weekend. I'm about to enter the second last dungeon at this point.
     
    For programming, I apparently lied about getting back to work on Action RPG right away.
     
    I am back to programming somewhat however. There's a couple of simplier game ideas I had that I think I'm going to work on first. The first one is a simple fighting game... yeah "simple". However kernel-wise, for what I have planned, it SHOULD be simple and I'm hoping I'll learn a few techniques and get some practice for Action RPG as I go.
     
    I've got an idea of how I want the gameplay to work. We'll see how I do, hopefully sooner than never. X_X
  23. Mord
    So I guess I power leveled without really trying. I slammed through everything with little to no trouble. The last 3 bosses for instance all fell pretty quickly. The 3rd-to-last in particular. There's apparently an overflow bug glitch on the 3rd-to-last boss that freezes the game for the NA version. If you make it to the 3rd defense stage, the boss does some special move that's bugged and freezes the game so the only way to win the fight is to power level so that you can defeat the boss before that happens or pray that move doesn't get used.
     
    In my case, the boss fell pretty darn fast. I didn't know exactly who the 3rd-to-last boss was, but guessed successfully based on how the wiki mentions you can attack the boss in optional bonus fights where the bug is still present. Anyone who played Ar Tonelico would have guessed similarly I'm sure.
     
    So yeah, beat those bosses and got Mir's ending. I've added the game to my Games Complete list since I'm satisfied. I'm sure I'll sit back and work on it some more from time to time, but I'm not really a perfectionist - plus I have too many freaking games left to play still!!!
  24. Mord
    With how much time has passed, I've gotten rusty with the 2600 again. As a result what I HAVE written is difficult for me to update and continue. So.... I'm going to start over again. Although I'll be using the code from this as a guideline. At any rate, posting the source for the last stable version for this build for the curious. I'll post "version 0.020" when I get the new code sufficiently caught up. I want to handle objects differently in particular, as well as have a better system for displaying more local/screen monsters on the screen, among other things.
  25. Mord
    And Grandia II is complete. Dreamcast version as I mentioned before. I have the PS2 version but I find it to suffer from some texture glitches in battle as well as slowdown. I'm pretty sure I missed one of the training books as I only had 7. Had all 8 mana eggs however. Ah well, I'm not aiming for perfection on these.
     
    Since I got swallowed up in this game, I didn't bother playing much of Dynasty Warriors 6 at all for the last week or so. I guess this means I should focus on DW6 rather than picking another game to play "on the weekends".
×
×
  • Create New...