PDA

View Full Version : duality world/player and problems of randomization



M_bowwarrior
03-21-2008, 08:51 AM
I've an idea : if the map is random and quest random, no games will be identical at another... so you can't speak with other players for tips or something else...
of course there is things who are common for all games but.... imagine, you have done a game who fit perfectly with your character... it could be interresting to play it again (and again, and again...) so:

-for the randomization of world, is it possible to have a variable (a number, with lots of digits) which is selectionned at the begining of the game ? so, if you want to do it another time, you could take "save" (on a piece of paper) this number and retype it next game. Moreover you can give it to someone else in order to "share" the same world.
-or maybe a world save who is different of the player save, and game by game you can chose a "random" world or select an old world for the begining, and "share" world saves


of course, maybe it isn't compatible with the world generation created by our "creator".

TB, what do you think about that ?


P.S.: I've try the pool system. let's try it ;)

Baranor
03-21-2008, 04:07 PM
This may be impossible, but it's one of my favorite ideas that I have seen created on the boards. It doesn't seem to difficult, but I have not done much programing.

Grey
03-21-2008, 07:02 PM
I voted for the second option on the basis that it means "I don't care too much, I just want to play the game". My leanings are more to the first option of random each time. This would make each player's experience far more interesting, meaning that reading an flg will be a lot more fun. Sharing worlds, whilst kind of interesting, is also something I wouldn't care to do much. Would also lead to people finding was of making custom games to pass to others - something that would be interesting, but hugely open to abuse.

Dougy
03-21-2008, 10:39 PM
More randomness => more replayability. If you have a choosable "seed" then people are going to generate many many worlds and eventually pick the easiest one to play over and over.

theotherhiveking
03-21-2008, 10:57 PM
Words that a while to generate, specially in java, that will take some memory too.

Unlike in adom,a random world will have too to decide witch monters are on X, generate every quest, dialogues, and so on... this can take 20 or 30 mins on a modern system /check dwarf fortress) So the save world IS necesary.


@dougy, is the random generation is really sucessful, all the worlds should be about the same dificult, if not, it needs some tweaking, anyway, a easy start doesnt mean that the later game will me that easy.


So, for a complex random world generation, NEEDS to be saved.

Laukku
03-22-2008, 06:58 AM
"A complete world [...], either randomly generated at the start of each game or chosen from a number of preselected worlds. "

See the JADE page (http://www.adom.de/jade/index.php3).

Kalmakka
03-23-2008, 03:06 AM
I think an important question here is what would be considered two identical worlds. There are many different ways in which two worlds can be considered equal.

World geography: World map will be equal among shared worlds, including locations of towns, dungeons and temples.

Story: Same main quest line

Quests: All quest-giving NPCs will be shared and offer the same quests

Dungeons A: Dungeons will be generated roughly equivalent in shared worlds, with special levels at the same places

Dungeons B: Dungeons have the exact same layout in shared worlds, including tension rooms, altars and the like.

Everything: If there was an orc at the third level of a dungeon that dropped a PoGA, then that orc will be there in all instances of that world and drop the same potion.


Having the two latter be part of the "world save" would just detract replayability, I think. The first 4 would be nice, though. Each game on the same world would still be as different as two games of ADOM. The final thing would limit a bit how encounters would work since you can't have encounter level depend on player level.


In any way, you wouldn't have to generate the entire world on creation time. Just start with generating the world map (or a 'rough' world map). Any locations can be represented with the random seed needed to generate them once the character enters. Basicly, you will represent the world with a graph that you generate as you traverse it.

Sradac
03-23-2008, 03:15 AM
Some of those would work if the playert wanted the option but for the last few i think it would be a huge waste of time and code. Think about it, in adom and probably jade only a few select creatures would have set drops every time defeated other than that the inventories would be random selected on generation. to have EVERYTHING drop the same thing each time would take alot of code and space up. even if it just copied an original world that set what drops what, if would have to generate and save every thing ever spawned so each random encounter would bring like 10-30 new monsters being saved so when encountered in the next characters game they would at some point meet that same encounter. i really think only "named" should have a specific drop table and have some of it randomized. think it was done like that in diablo 2, named monsters would have a table of say 10 things they could drop but only drop a random 1,2,3 etc of those 10 each time slain. think some roguelikes do this also,pretty sure ToME does as thats really the only roguelike i play other than adom. and the Doom RL sometimes for a quick fix when it dosent really matter if i screw up and get a YASD.

Dougy
03-23-2008, 03:31 AM
Firstly, knowing where everything is in a world would, without a doubt, make life significantly easier. In ADOM I know every time I go into the gremlin cave exactly what to expect.

Secondly, imagine if you could guarantee there was an altar in the big room in the puppy cave in ADOM. That would make a huge difference to the whole game. So the player can just generate worlds over and over until this happens.

If we exclude altars from the seeding (and basically any other dungeon items, forges, herbs, shops, etc.), then instead find someone giving you a easy quest for a powerful item. If there isn't one, generate worlds over and over until it does happen. It might take a long time, but sooner or later someone will post a seed to a newsgroup and anyone who uses that seed will have a significantly easier game.

JADE, like ADOM should follow the philosophy: if you die you don't get a second chance.

theotherhiveking
03-23-2008, 07:35 PM
JADE, like ADOM should follow the philosophy: if you die you don't get a second chance.



That's it, the 'world' including dungeon localizations and npc are saved (just like in adom) but the dungeons are not.

Dougy
03-23-2008, 10:09 PM
That's it, the 'world' including dungeon localizations and npc are saved (just like in adom) but the dungeons are not.

Eventually someone will post a seed to a newsgroup that will be easier than your average game for some reason or another. In ADOM, there's a reason you don't see the entire map at the start, including dungeon locations - that is you're not meant to know about these regions. People know about these regions from playing before, and that was unavoidable in ADOM, but it's definately out of character.

In any case, I personally wouldn't have to use "seeds", but I don't really want to compare my high scores with them.

Epythic
03-25-2008, 12:01 PM
Ehm. A "seed" usually is a number, lets say 32 bit, it doesnt really matter. 32 bit means 4294967296 different seeds, that means 4294967296 possible worlds.

The RNG makes EVERYTHING out of that one number.

Its highly unlikely that you will find a perfectly easy world. There may be one easy thing, like a b=oDS as a starting item, in the "worst" case. But the RNG will make up for it later.

And anyway: if such a world would be found (i said unlikely, who says you cant get hit by a meteorite? you can!) others would know the number too. They can sort out these highscores.

EDIT: Oh and i forgot one more thing: at least in ADOM, its not like all places are pregenerated. They are generated when you enter them (first). Same in jade, TB said it somewhere. So, you generate your overworld with that RNG number. Then, you play, using numbers your RNG spits out. Then, you enter a location. At that state, the RNG will have generated N random numbers, depending on what you did between rng init and entering location. Different N means different RNG output when generating the location, means different location. So, even if you get a nice starting seed, if you do only ONE different turn, things are likely to be VERY different later.

Dougy
03-25-2008, 01:12 PM
To clarify, a "seed" is a starting point in an algorithm, usually one that uses a RNG. The algorithm generates something (the JADE world, in this case) from the data stored in the seed and the RNG.

The questions are still open: What data is to be stored in the seed? What algorithm do you use to generate a world from the seed?

The suggested idea is very close to save-scumming a game at move 1. The less information included in the seed, the less reason there is to have the seeding process at all. The more information included in the seed, the easier it is for someone to find a seed that will generate a world, every single time, that is easier to play.

M_bowwarrior
03-25-2008, 04:01 PM
To clarify, a "seed" is a starting point in an algorithm, usually one that uses a RNG. The algorithm generates something (the JADE world, in this case) from the data stored in the seed and the RNG.

The questions are still open: What data is to be stored in the seed? What algorithm do you use to generate a world from the seed?

The suggested idea is very close to save-scumming a game at move 1. The less information included in the seed, the less reason there is to have the seeding process at all. The more information included in the seed, the easier it is for someone to find a seed that will generate a world, every single time, that is easier to play.

of course, I speak as a world as in ADOM, that's means in the place 127.48 there is a forest, and so on... BUT, when you'll enter a dongeon, it will be different every time.

it is this sort of save I'll speak about, as if every time you play adom it is the same "seed" and you have the same world (but as you know every time different).

Dougy
03-25-2008, 09:59 PM
of course, I speak as a world as in ADOM, that's means in the place 127.48 there is a forest, and so on... BUT, when you'll enter a dongeon, it will be different every time.

it is this sort of save I'll speak about, as if every time you play adom it is the same "seed" and you have the same world (but as you know every time different).

This suggestion sounds like fun, yes, but there is a grey area here, which is between cheating and not cheating. Perhaps a good way around this is to mark any flag generated from a seeded world "%s created his own world to play in." Any results from this seeded world that are submitted would not be accepted for the high score list. If this is the case, then it wouldn't matter whether or not it's considered cheating.

If only the dungeon locations are stored, yes, there is little chance here of getting the easy game, or even the easy start. But some information about the contents of the dungeon should be stored, right? Otherwise, one game you would enter a newbie cave, and in the next game it's a greater dragon vault. How can you compare you participation using that seed to others' games, if that is the case?

Also, in ADOM you can enter the CoC and be sure to hit dwarftown. Knowing it's there containing an altar, etc. is a key tool to playing ADOM.

Sradac
03-25-2008, 10:30 PM
That's it, the 'world' including dungeon localizations and npc are saved (just like in adom) but the dungeons are not.

yeah i never heard anything about once you die the world ends as well. that kinda importance would be a huge burden! if you die, the whole world shatters!

hrothgar
03-27-2008, 02:54 PM
I just stick to TBs words. Theres the possibility of choosing... choosing what?: whatever TB think is best... the possibility of choosing some constancy would be nice, the terms of this constancy i leave them to TB

Dougy
03-31-2008, 02:51 AM
From here (http://www.adom.de/forums/showpost.php?p=1689&postcount=2), TB writes:


As for JADE I'm not going to be overly concerned with save file compatibility (and world file compatibility once worlds can be saved), simply because this requires enormous effort when adding sweeping and fun changes to the game.

It seems your wish will come true.

F50
04-03-2008, 04:34 AM
I think an important question here is what would be considered two identical worlds. There are many different ways in which two worlds can be considered equal.

World geography: World map will be equal among shared worlds, including locations of towns, dungeons and temples.

Story: Same main quest line

Quests: All quest-giving NPCs will be shared and offer the same quests

Dungeons A: Dungeons will be generated roughly equivalent in shared worlds, with special levels at the same places

Dungeons B: Dungeons have the exact same layout in shared worlds, including tension rooms, altars and the like.

Everything: If there was an orc at the third level of a dungeon that dropped a PoGA, then that orc will be there in all instances of that world and drop the same potion.


good point.

In C, there is a really easy way to do the "seeding" thing. There are two standard functions used for randomizing in C: seed and rand

if you call seed with the same value every time you start a new game and save the number of calls to rand you have made so you can use seed to get to where you left off, the list of random numbers generated will be the same every time. This means that anything generated on startup will be *exactly* the same. If the player makes the *exact* same moves as last time, the exact same thing will result.

That said, I really don't think this is a good idea.