Jump to content
IGNORED

Open world generator musings


Captain Spazer

Recommended Posts

15 minutes ago, Lewis2907 said:

I was checking if someone was able to make a DPC and Multisprite version?

 

What a coincidence. I was just working on my DPC+ version yesterday. You have to change so many things, including the size of the sprites and playfields, so it wouldn't be an easy job to convert the 8 x 8 World (64 Rooms) example program to DPC+. If I put the code of my DPC+ work in progress on the bB page as-is, people would complain that it's too complicated and hard to understand. I also wouldn't want to use the playfields and sprites that I'm using in my WIP, so I'd have to redraw all that and try to simplify the code. If I spent a month doing that, there's a good chance that people would still complain that it's too complicated and has too many REM comments.

 

I don't like the Multisprite Kernel because of all the limitations/considerations, so I try to avoid it. 

  • Like 1
Link to comment
Share on other sites

5 hours ago, Random Terrain said:

 

What a coincidence. I was just working on my DPC+ version yesterday. You have to change so many things, including the size of the sprites and playfields, so it wouldn't be an easy job to convert the 8 x 8 World (64 Rooms) example program to DPC+. If I put the code of my DPC+ work in progress on the bB page as-is, people would complain that it's too complicated and hard to understand. I also wouldn't want to use the playfields and sprites that I'm using in my WIP, so I'd have to redraw all that and try to simplify the code. If I spent a month doing that, there's a good chance that people would still complain that it's too complicated and has too many REM comments.

 

I don't like the Multisprite Kernel because of all the limitations/considerations, so I try to avoid it. 

 

I appreciate the earlier bump on the thread by Lewis as it made me aware of that page on your site.  Thanks to you and KarlG for making it!   Just looking through the code with my limited knowledge, what types of things other than the playfield graphics are generated by the algorithm if any?   Are all the bits in the variable(s) used for the massive map in the 16x16 example?   If this is the same method that Pitfall uses for it's world, I know there that each bit determines placement/number of various different items on screen from treetop style to hazards to enemies for example.

  • Like 1
Link to comment
Share on other sites

50 minutes ago, LatchKeyKid said:

I appreciate the earlier bump on the thread by Lewis as it made me aware of that page on your site.  Thanks to you and KarlG for making it! Just looking through the code with my limited knowledge, what types of things other than the playfield graphics are generated by the algorithm if any? Are all the bits in the variable(s) used for the massive map in the 16x16 example? If this is the same method that Pitfall uses for it's world, I know there that each bit determines placement/number of various different items on screen from treetop style to hazards to enemies for example.

 

If I remember correctly, it's just the colors and playfields. For my DPC+ version, I had to cut the playfields down to something like 7 to save space. I like how the program remembers when a room has been cleared. That room memory could be used in all kinds of games.

 

youtube.com/watch?v=0xWuy0AQTCA

 

  • Like 2
Link to comment
Share on other sites

2 hours ago, Random Terrain said:

 

If I remember correctly, it's just the colors and playfields. For my DPC+ version, I had to cut the playfields down to something like 7 to save space. I like how the program remembers when a room has been cleared. That room memory could be used in all kinds of games.

 

 

Agreed.  It's a nice feature but I too saw when looking through the .bas that it used up 8 variables (!).   I think for my potential purposes (especially given that I don't know what I'm doing!) that I might prefer the variables over keeping rooms cleared just in case.   I hope to use the standard kernel so I was looking at the 8x8 version posted that states:

 

Quote

It has a separate rand function and variable for cases where you would want to use rand for more than just generating screens (rand works normally for everything else as always).

 

https://www.randomterrain.com/atari-2600-memories-batari-basic-commands.html#ex_8x8_world

 

I was reading through the .bas and I didn't notice where that separate rand function mentioned was but I was hoping one could use that for pseudorandomizing enemy/obstacle/item placement instead.   I'm excited that a framework for having a 64 map world with 32 distinct screens/playfields exists on your site.

  • Like 1
Link to comment
Share on other sites

I tried taking a stab at it today and so far a crash and burn lol. At least the Multisprite loaded and that was it. I plan to play with this some more as this would make my games a lot better. 

20231205_Multisprite_Ex_8x8_World.bas 20231205_DPC_Ex_8x8_World.bas

Edited by Lewis2907
  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I was able to scale the code back some and make a Standard, Multisprite and DPC version. This should be a little easier for us newbies as I'm still learning Bb. The only thing I haven't figured out yet is to do a sequence in a certain order. Sort of below to make a map of the worlds. I think a data table may work ("similar to the PacMan Game I made, but it eats a "lot" of memory up) or something else similar. Either way this opens up some ideas and can continue my other builds.

 

0 1 2 3 4 5 6 7

1 2 3 4 5 6 7 0

2 .....

3......

4 7 2 3 2 1 0 5

5.....

6.....

7 6 5 4 3 2 1 0

20231218 - DPC Openw World.bas.bin 20231218 - Open World Multispritte Kernel.bas.bin 20231218 - Open World Standard Kernel.bas.bin 20231218 - DPC Openw World.bas 20231218 - Open World Multispritte Kernel.bas 20231218 - Open World Standard Kernel.bas.asm

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

On 9/3/2022 at 12:42 PM, Philsan said:

@Karl G first of all, thanks for your code (and thanks to @Random Terrain for example program).

 

I would like to design a world that always remains the same.

 

Is there a way to make the rooms appear in a defined order?

I don't need to track visited rooms.

 

For example, room#

 

1 2 3 4 5 6

7 8 9 10 11 12

13 14 15 16 17 18

19 20 21 22 23 24

25 26 27 28 29 30

31 32 33 34 35 36

 

Thanks!

Philsan maybe this is what you are looking for. I was working on a few things and stripped this down some.

20231229 - Inventory Tracker.bas 20231229 - Inventory Tracker.bas.bin

  • Thanks 1
Link to comment
Share on other sites

20 hours ago, LatchKeyKid said:

How does using your version differ from the ones posting on RT?   I saw that they're using the supercharger cart hardware/format but I don't know enough about programming to go further than that.

I'm no expert, but I think the SC gives more variables if used correctly. As far as the versions. I normally strip peoples examples down to something I can understand better and have a template for future games or something to share with people trying to learn Bb. Nothing wrong with RT's code as it's way better that what I posted and used to learn Bb especially the way he has his notes/comments as at times  i have reteach myself something since I jump around with all 3 kernels. Most of the time I copy and paste their code and make notes of what I think it does. That's how I started out learning Bb and experimenting a little with 7800basic now (that is a little more complicated for me right now). I plan to learn ASM as well since it's used here and there with Bb. Hopefully my gibberish made sense. 

  • Like 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...