dMZX Forums: CJA's Journal - dMZX Forums

Jump to content

  • (8 Pages)
  • +
  • « First
  • 6
  • 7
  • 8
  • You cannot start a new topic
  • You cannot reply to this topic

CJA's Journal unwonderless

#211 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 15 August 2016 - 03:07 AM

thaaaanks!

I'm looking for some criticism for these. I've heard that it needs to be more consistent re: chiptunes and non-chiptunes, and I'll probably end up replacing the dungeon and town themes with something more consistent and less chippy, probably recycling the motifs from Catacombs or Steam Zone... and making all of the battle music more chippy.
Need a dispenser here.
0

#212 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 05 January 2017 - 12:36 AM

So, a source of inspiration came from an unexpected place: The ambiguity of my battle engine was frustrating me, so I decided to do something that directly opposes my usual strategy. I took my battle engine out of MZX and and gave it a home in a text file, and then I commented every line.

Every.

Line.

(Well, not every line, but there IS about one comment per command now.)

I've found that not only did this fix a few wriggling bugs, but it made item drops work again and abstracted units so that I can add a party switcher later instead of one static party for the whole game. Woo!

This was brought on by me absolutely slamming down some story lines into the story planner. Creating a character is such a nice way to move things forward. Also, story interpolation is really good. If you know where your story starts and ends, put those as two lines in a document and just keep inserting new events that happen between any two adjacent events until you get your groove on.
Need a dispenser here.
0

#213 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 05 January 2017 - 01:06 AM

I find battle engines get big quickly. I have more trouble with the 64k per-robot limit with battle engines than with anything else, and that's with designing the engine to use multiple robots from the beginning. Code that gets big can be annoying to work on outside MZX because you get no warning when your code gets too big and fails to load properly.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#214 User is offline   Graham 

  • . "@Master Procrastinator"
  • PipPipPipPip
  • Group: Members
  • Posts: 625
  • Joined: 28-December 12
  • Gender:Male
  • Location:Oregon

Posted 05 January 2017 - 04:21 AM

View PostCJA, on 04 January 2017 - 04:36 PM, said:

So, a source of inspiration came from an unexpected place: The ambiguity of my battle engine was frustrating me, so I decided to do something that directly opposes my usual strategy. I took my battle engine out of MZX and and gave it a home in a text file, and then I commented every line.

Every.

Line.

(Well, not every line, but there IS about one comment per command now.)

I've found that not only did this fix a few wriggling bugs, but it made item drops work again and abstracted units so that I can add a party switcher later instead of one static party for the whole game. Woo!

This was brought on by me absolutely slamming down some story lines into the story planner. Creating a character is such a nice way to move things forward. Also, story interpolation is really good. If you know where your story starts and ends, put those as two lines in a document and just keep inserting new events that happen between any two adjacent events until you get your groove on.

Story interpolation sounds like a neat suggestion to try. Thanks for sharing that.

What is the purpose of commenting every line, exactly? As a debugging tool?
Currently working on Servo for MegaZeux, I hope to complete it by the middle of 2015? Who knows...

"Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes."
-Jack Handey
0

#215 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 05 January 2017 - 04:23 AM

I'd say the comments aren't even necessary, it's just the act of mentally stepping through all your code and reasoning about what it does that causes you to catch a lot of bugs you previously missed.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#216 User is offline   Graham 

  • . "@Master Procrastinator"
  • PipPipPipPip
  • Group: Members
  • Posts: 625
  • Joined: 28-December 12
  • Gender:Male
  • Location:Oregon

Posted 05 January 2017 - 04:17 PM

View PostDr Lancer-X, on 04 January 2017 - 08:23 PM, said:

I'd say the comments aren't even necessary, it's just the act of mentally stepping through all your code and reasoning about what it does that causes you to catch a lot of bugs you previously missed.

Oh gotcha. Yeah I could see that.
Currently working on Servo for MegaZeux, I hope to complete it by the middle of 2015? Who knows...

"Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes."
-Jack Handey
0

#217 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 06 January 2017 - 01:16 AM

Yeah, essentially, that's what it did. But commenting will make things easier in the future, especially fixing bugs.

And... Thanks Lancer, I just noticed that I'm at 62K right now. Guess I'll separate the logic for moves and damage. Or honestly I'd just find it easier to run through the file and strip out all the comments before loading. fok.
Need a dispenser here.
0

#218 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 06 January 2017 - 02:35 AM

View PostCJA, on 06 January 2017 - 11:16 AM, said:

And... Thanks Lancer, I just noticed that I'm at 62K right now. Guess I'll separate the logic for moves and damage. Or honestly I'd just find it easier to run through the file and strip out all the comments before loading. fok.

Is this engine something that needs to grow as you add more stuff to the game? Because if so, the latter approach is only kicking the can down the road for a bit.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#219 User is offline   KKairos 

  • not an actual chipmunk
  • PipPipPipPipPip
  • Group: Members
  • Posts: 2,245
  • Joined: 05-August 00
  • Gender:Male

Posted 06 January 2017 - 08:07 AM

My current project uses about 80 robots at a time that could be doing nothing, but they're each far, far away from the 64k limit all the time so far, and they're all prepared to load one of the so far 12 or so different sprite-driven object types via hub.txt. (I will probably never need all 80 objects at once on a single board, but I'd better be sure of that before I plan otherwise.) I've found piecemeal code is my friend for sanity and reset-able things like the "rooms" of the game and which enemies are in them. Maybe since your game doesn't (seem to?) need real-time you can have a separate bot calling .txt files as subroutines with a "main" routine doing the linking between the two? Or even one robot loading multiple .txt files in sequence, with some careful variable manipulation to get back to the right "spot" in the main routine? (Thinking about it for five seconds, the right string and "goto" could do it?)
darganflayer.net kaikairos.dev itch.io
0

#220 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 06 January 2017 - 11:02 AM

View PostKKairos, on 06 January 2017 - 06:07 PM, said:

Or even one robot loading multiple .txt files in sequence, with some careful variable manipulation to get back to the right "spot" in the main routine? (Thinking about it for five seconds, the right string and "goto" could do it?)

Interesting idea. I used this technique in Taoyarin and it worked surprisingly well there - all the enemies would load_bc multiple times per frame to load the different parts of their logic. I used this as a method of making it easier to reuse code between enemies, but it would be a fantastic way of reducing robot memory usage as well - I've never thought about using it for that. The only problem is that you really need to design the robot from the ground up to use this approach - I think converting over might be a little bit troublesome. Depends how compartmentalised your code is.

There's a performance concern, but given how much Taoyarin abused it and it didn't really cause any problems I wouldn't worry about that.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#221 User is offline   KKairos 

  • not an actual chipmunk
  • PipPipPipPipPip
  • Group: Members
  • Posts: 2,245
  • Joined: 05-August 00
  • Gender:Male

Posted 06 January 2017 - 04:07 PM

Yeah, everything past the player engine was pretty modular from the start. Literally there's hub.txt and then *monster/objectname*.txt for all the others. Since I rewrote the structure of the file that tells the game what to put in each room, it's actually streamlined hub.txt a fair amount. And again in my case robot memory wasn't the main concern, just a side bonus. There is the benefit that the biped enemies will probably AI/move basically the same way, just with slightly different attacks, which could be a good general principle if CJA has a bunch of slightly different effects/displays that need to happen.

In CJA's case I suspect this would be most useful for an auxiliary robot loading different actions with a hub structure, and maybe the main robot(s) using a subroutine and then sending stuff off to aux-bot and waiting to be snapped out of their 'pause' routines.

Anyway before I turn this into a robotic talk thread, good luck CJA and I hope some of this is marginally helpful!
darganflayer.net kaikairos.dev itch.io
0

#222 User is offline   Bramble 

  • Veteran Member
  • PipPipPipPipPip
  • Group: Members
  • Posts: 2,859
  • Joined: 19-March 04
  • Gender:Not Telling

Posted 06 January 2017 - 10:58 PM

View PostCJA, on 04 January 2017 - 07:36 PM, said:

This was brought on by me absolutely slamming down some story lines into the story planner. Creating a character is such a nice way to move things forward. Also, story interpolation is really good. If you know where your story starts and ends, put those as two lines in a document and just keep inserting new events that happen between any two adjacent events until you get your groove on.


I love this, CJA! I agree with your assessment about characters. In a way, if the story is driven by a character, it's easy to see how events should progress. Further, I really like the idea of story interpolation. I feel like that's an evolution in gamemaking that I have never been able to accomplish. With your technical skills and creative ability, I bet you're churning some pretty worthwhile stuff.
0

#223 User is offline   Graham 

  • . "@Master Procrastinator"
  • PipPipPipPip
  • Group: Members
  • Posts: 625
  • Joined: 28-December 12
  • Gender:Male
  • Location:Oregon

Posted 07 January 2017 - 02:31 AM

View PostKKairos, on 06 January 2017 - 12:07 AM, said:

Maybe since your game doesn't (seem to?) need real-time you can have a separate bot calling .txt files as subroutines with a "main" routine doing the linking between the two? Or even one robot loading multiple .txt files in sequence, with some careful variable manipulation to get back to the right "spot" in the main routine? (Thinking about it for five seconds, the right string and "goto" could do it?)

Funny enough, CJA wrote a tutorial on this some time back
http://www.digitalmz...=0
Currently working on Servo for MegaZeux, I hope to complete it by the middle of 2015? Who knows...

"Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes."
-Jack Handey
0

#224 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 07 January 2017 - 04:57 AM

View PostGraham, on 07 January 2017 - 12:31 PM, said:

Funny enough, CJA wrote a tutorial on this some time back
http://www.digitalmz...=0

Bit different. CJA was talking about programmatically pasting text files from multiple sources together, saving the result to a file, then loading it as a robot.

KKairos is talking about having the robot actually load different text files' worth of stuff to do.

e.g.

code.txt
. "... do a bunch of stuff ..."
set "code2.txt" "load_robot"


code2.txt
. "... do a bunch more stuff ..."
wait 1
. "Loop back to the original code"
set "code.txt" "load_robot"


The thing about the second approach is that you can use this to essentially have one robot with an unlimited robot memory capacity, if it's all laid out carefully.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#225 User is offline   Graham 

  • . "@Master Procrastinator"
  • PipPipPipPip
  • Group: Members
  • Posts: 625
  • Joined: 28-December 12
  • Gender:Male
  • Location:Oregon

Posted 07 January 2017 - 05:07 AM

View PostDr Lancer-X, on 06 January 2017 - 08:57 PM, said:

Bit different. CJA was talking about programmatically pasting text files from multiple sources together, saving the result to a file, then loading it as a robot.

KKairos is talking about having the robot actually load different text files' worth of stuff to do.

e.g.

code.txt
. "... do a bunch of stuff ..."
set "code2.txt" "load_robot"


code2.txt
. "... do a bunch more stuff ..."
wait 1
. "Loop back to the original code"
set "code.txt" "load_robot"


The thing about the second approach is that you can use this to essentially have one robot with an unlimited robot memory capacity, if it's all laid out carefully.

Ah I see. I've actually used both of those approaches in my game with splendid results.
Currently working on Servo for MegaZeux, I hope to complete it by the middle of 2015? Who knows...

"Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes."
-Jack Handey
0

#226 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 08 January 2017 - 01:14 AM

I'm probably going to statically split the main battle engine into pieces. Move execution and damage code is 23K and is the only part that will really grow substantially from here, and the main logic is 36K (which won't move much -- maybe 20 lines for a new status condition).

I do like knowing what's going on with the back ends of your projects, though. Interesting Stuff!

EDIT: No, seriously, the comments are massive. I have 20K of comments in here. Holy crap.

This post has been edited by CJA: 08 January 2017 - 01:16 AM

Need a dispenser here.
0

#227 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 08 January 2017 - 01:28 AM

Oh yeah, here, have a crappy CSV reader. It was designed for multiple files and minimal babysitting, just plug in the file list and don't worry about anything else.

Spoiler


EDIT: Crap, this breaks under some circumstances. I'll fix it and make a thread or something.

This post has been edited by CJA: 08 January 2017 - 02:26 AM

Need a dispenser here.
0

#228 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 08 January 2017 - 01:34 AM

Pretty cool stuff, especially how robust you've made it. A potential enhancement might be to support "-surrounded text fields, which can contain commas. I can see doing this if you wanted to include dialogue or potentially item descriptions or something.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#229 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 12 January 2017 - 09:02 PM

So I've started trying to complete sub-tasks in this "capsule" way. Y'know how a traditional gel capsule looks? Sort of like a progress bar at 50%, but it's totally enclosed by a hard protective shell. Even if something isn't totally finished, I like to 'close it off' and program the ending code or design the exit or whatever before getting halfway. That way, if I don't really want to work on that part of the project, I can just put that 'capsule' aside and work on something else.
Need a dispenser here.
0

#230 User is offline   Dr Lancer-X 

  • 電波、届いた?
  • Group: DigiStaff
  • Posts: 8,936
  • Joined: 20-March 02
  • Location:ur mom nmiaow

Posted 12 January 2017 - 11:15 PM

View PostCJA, on 13 January 2017 - 07:02 AM, said:

So I've started trying to complete sub-tasks in this "capsule" way. Y'know how a traditional gel capsule looks? Sort of like a progress bar at 50%, but it's totally enclosed by a hard protective shell. Even if something isn't totally finished, I like to 'close it off' and program the ending code or design the exit or whatever before getting halfway. That way, if I don't really want to work on that part of the project, I can just put that 'capsule' aside and work on something else.

I liken it to architecture. You need to have scaffolding in place in order for construction to go ahead - you can't just make the whole house at once. So it makes sense to get a particular module into a very basic, completed state as quickly as possible so that you can design around it. A battle engine that shows the enemies you're fighting but closes when you press space, for example. Then you can work on the game and actually "finish" it - in other words, you can "play" the entire game from the beginning to the end. Then you start filling out the incomplete systems and you get a really strong sense of how much work you have to do. It's very motivating.

EDIT: By the way, this is in complete antithesis to the 'vertical slice' model of development, but I don't think much of vertical slice and it's not that important unless you need to demo your game at E3.
Posted Image
<Malwyn> Yes, yes. Don't worry I'd rather masturbate with broken glass than ask you for help again. :(
0

#231 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 13 January 2017 - 04:05 AM

I googled vertical slice development. Vertical slice sounds like s***.

The player now has the ability to change cores by using key items now (mechanically, it's like changing class in the middle of a battle). And, of course, you can do this out of battle as well. I made sure to program the item system so that the actual item handler (Global robot) does the leg work, and then either it handles the healing outside of the battle with the message system, or it tells the battle engine to do it.
Need a dispenser here.
0

#232 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 15 January 2017 - 06:35 PM

well, it's high noon somewhere...

forgive the horrendous letterboxing, I just wanted to show off this new attack.


Need a dispenser here.
0

#233 User is offline   Graham 

  • . "@Master Procrastinator"
  • PipPipPipPip
  • Group: Members
  • Posts: 625
  • Joined: 28-December 12
  • Gender:Male
  • Location:Oregon

Posted 15 January 2017 - 09:09 PM

View PostCJA, on 15 January 2017 - 10:35 AM, said:

well, it's high noon somewhere...

forgive the horrendous letterboxing, I just wanted to show off this new attack.



:-D
That looks awesome CJA! Games with battle systems have never been by forte but I will give this a try. Keep up the good work.

This post has been edited by Graham: 15 January 2017 - 09:09 PM

Currently working on Servo for MegaZeux, I hope to complete it by the middle of 2015? Who knows...

"Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes."
-Jack Handey
0

#234 User is offline   KKairos 

  • not an actual chipmunk
  • PipPipPipPipPip
  • Group: Members
  • Posts: 2,245
  • Joined: 05-August 00
  • Gender:Male

Posted 16 January 2017 - 01:05 AM

View PostCJA, on 03 July 2016 - 08:29 PM, said:

Posted Image

Late to the party on this image, but: Love the design on those guys, but they kind of look like they're afraid of the player--was that on purpose?

PS Less late to the party, that video looks awesome.
darganflayer.net kaikairos.dev itch.io
0

#235 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 28 January 2017 - 04:16 AM

So, except for the main character, the party totally changes in chapter 2, and you end up with a much more... lawless, chaotic party. Writing a different type of dialogue is welcome, because I felt like things were getting too technical and boring. I might actually go back and make some of the dialogue a bit more spicy and add more flair to the characters I have. They're not very well defined, just sort of written as "Shit people would say when faced with X" sort of dialogue.
Need a dispenser here.
0

#236 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 28 January 2017 - 06:47 PM

View PostKKairos, on 15 January 2017 - 08:05 PM, said:

Late to the party on this image, but: Love the design on those guys, but they kind of look like they're afraid of the player--was that on purpose?

PS Less late to the party, that video looks awesome.

I dunno what you mean. Are you seeing the black part as their eyes?
Need a dispenser here.
0

#237 User is offline   KKairos 

  • not an actual chipmunk
  • PipPipPipPipPip
  • Group: Members
  • Posts: 2,245
  • Joined: 05-August 00
  • Gender:Male

Posted 28 January 2017 - 11:39 PM

I was mainly seeing the brown eyes as almost being "scared", but very possible I'm misreading the intent. If others are seeing other things I'd defer to them.
darganflayer.net kaikairos.dev itch.io
0

#238 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 11 February 2017 - 12:30 AM

Well either way THEY SHOULD BE SCARED.

Also: tfw you realize that your game project is named "After <name of the company you work for now>"
Need a dispenser here.
0

#239 User is offline   CJA 

  • «≡larch bucket≡»
  • PipPipPipPipPipPip
  • Group: Members
  • Posts: 3,262
  • Joined: 23-June 05
  • Gender:Male
  • Location:......@.c....

Posted 06 May 2017 - 11:06 PM

Aasdfgaksb

Waugh.

I have done nothing
Need a dispenser here.
-1

Share this topic:


  • (8 Pages)
  • +
  • « First
  • 6
  • 7
  • 8
  • You cannot start a new topic
  • You cannot reply to this topic

16 User(s) are reading this topic
0 members, 16 guests, 0 anonymous users