Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 172 173 [174] 175 176 ... 221

Author Topic: Dwarf Fortress meets The Outer Wilds? "Ultima Ratio Regum", v0.10.1 out Feb 2023  (Read 596306 times)

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2595 on: June 29, 2015, 11:28:09 am »

A round-up of this year's (UK) IRDC from the past weekend! http://www.ultimaratioregum.co.uk/game/2015/06/29/irdc-2015/
Logged

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2596 on: July 05, 2015, 12:05:27 pm »

This week I’ve been developing the crowd mechanics, and it’s going well, but first we need to talk about how exactly I need this to work:

We have two levels of resolution: the map grid the player is walking around on, and then every other map grid (in the 250×250 tile world map) which is not currently loaded. Therefore, any NPCs who are important but are not currently spawned must be tracked by the game when they’re on a non-loaded world map tile. This, of course, gets very complicated when you have an important NPC start on the loaded map tile the player is walking around, and then step off that map tile onto another… and then how do we track them over, say, 50 turns if the player THEN decided to follow this important NPC onto another map tile, spawning that tile (which the NPC has been walking in, even though it hasn’t been spawned)? Well – for the time being we aren’t worrying about that, although I think I have a good solution. What I’ve been doing this week is getting the standard crowd spawning and walking around sensibly in city districts, which means Lower-Class, Middle-Class, Upper-Class, Military, Market, City Centre, and Religious districts (docks and castles are still not spawning; castles will be coming 0.9, and docks either 0.9 or 0.10 depending on how development plays out).

I tried a few systems last week where NPCs could walk freely around the map without paying attention to the roads, and this ran into two issues. Firstly, having 100+ NPCs moving at once was necessary for the city districts to not feel like a ghost town (even if I made sure the game slyly spawned/de-spawned NPCs around the player to give a false impression of greater density) and this, on 200×200 maps, was beginning to cause minor performance issues; secondly, it just didn’t look very interesting, and there didn’t seem to be any real method or deliberate action to what NPCs were doing. If you trailed them until they hit their target location, they’d just then choose another location, and repeat.

So, this new method had three logics: firstly, to create a form of pathfinding which doesn’t actually need the game to calculate paths to reduce CPU usage; secondly to make NPC movement seem more deliberate; and thirdly to allow NPCs to “path” (or rather, fake-path) towards the gates at the edge of cities, and thereby withdraw themselves from the map if the player trails them long enough, rather than just continuing to identify new locations on one map which they are allowed to travel between. So, I got to work.



The first step (above picture) was to identify areas of the map which a) any NPC could walk (light green), b) which any NPC could walk on and which were curves in the road which the NPCs would have to stop walking straight to traverse (yellow), and which only certain NPCs would be allowed on (dark green) for each of the seven current city districts. There are also some areas of the map which aren’t roads which are blocked to some NPCs (like the courtyard in a mansion, for example), but those aren’t integrated just yet. I created this secret road map, got NPCs spawning on roads, wrote a bit of code for them to be able to identify another road coming off the first road, and let it run.



The first trials would up like the above picture. NPCs spawned on roads, and could sometimes path correctly… but they were always looking for other branches of the road networks they could move onto, but seeing parts of the road they were already on as being a “different” road, and therefore they kept flicking uncertainly back and forth between hundreds of subjective “roads” which, to a human player, would be obvious.The next step was to add a road_direction variable (basically the same as the player’s facing variable) where they keep track of what direction they have been moving, and they can’t read a “road” into their current direction, or their opposite direction, and thus will only detect new roads to explore if those roads are at right-angles. I then upgraded the code for the curves, creating hidden “lanes” for the NPCs to path along:



Which can be usefully compared to the overall pathfinding map for the same district…



…for when we come to NPCs moving off the roads.

Anyway. With that fixed, I upped the number of NPCs, and we got this wonderful image:



This looked cool, but it was a bit too dense, and they looked too similar all sticking to the road paths rather than diverting. We’ll be coming to the “going off the road” issue later in this entry, but the next step was to try and balance their spawning, de-spawning, and the density of the crowd. I firstly needed to make sure an equal number were spawning in front of the player and behind the player, and that some NPCs would spawn directly at the gates, even if those gates are in full sight of the player, and that they would then cut back across the player’s movement. Once that was done, and people were likely to spawn in front of the player, and behind, and at all different locations – and a full complement of civilians was spawned before the player even set foot into a map grid – we had something which looked much better. Here’s a gif of watching a wide range of people wandering around (for now it is spawning them with a random culture, rather than spawning an appropriate population distribution for each nation), and then after they’ve walked around for a bit, I decided to have a closer ‘l’ook at one of them and browse their clothing:



And here’s a comparable screenshot of  “examining a passing NPC” in progress, which I have chosen simply because I really liked how this guy looked:



Two stages now remain: to ensure this works for all city districts (and then extend it to tribal settlements, fortresses, towns, etc), and to also make sure that sometimes NPCs wander off the road and go exploring on their own. The first is still in progress, but the second seems to be going reasonably well. The objective is to get the NPCs very rarely “breaking off” from the road and heading to other places on the map, either a randomly-selected location (which they are allowed to walk on), or a door they are allowed to go through (so a random “human” (‘h’) can path towards a random house in a lower-class or middle-class district, and then if the player sees them go through, that NPC is then associated with that house). Equally, we should have a small number of NPCs spawn off roads out of the player’s line of sight, and then path towards the roads, and then move towards road properly. When working nicely, this gets the majority of NPCs keeping to the roads, whilst very rarely we see one of the NPCs break off and head elsewhere, and if you follow them, they will either carve a path through the terrain or make their way to a door and then pass through – I’m clearly going to need some flavour text for “You see a person go through a door”, “You hear a door open and shut” if you’re right next to it but don’t actually see them go through, etc (whilst making sure this doesn’t get obnoxious and it doesn’t fill up the message log). As was suggested in a previous thread, I’m also going to add lots of flavour text when you enter/exit buildings, but that’ll come later this release. I’m still finishing off the pathfinding to non-road areas, so that’ll probably come next week when I’ll likely have finished pathfinding (I hope) and have the remainder of that to show off, and possibly some other clothing too? See you then!
Logged

Retropunch

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2597 on: July 05, 2015, 12:17:23 pm »

Great entry and it looks really impressive!! From my own foray into this I had to add a few things in to make it look 'realistic'. Firstly a few random groups hanging around did wonders for 'realism', as did some very basic scheduling. People aren't always going somewhere, and having them always on the move just made it seem too much like a conveyor belt rather than proper walking.

I'd suggest you designate some open spaces as meeting points and have some path to there and then just stand around for a few hundred turns (with a bit of shuffling). I'd then maybe make sure more people go into houses at night (I had some go to a bar, and most go home) and then just have one or two out on the street (martial law districts could have no one out?). I also had npcs path to other npcs on occasion - I never got this working 100%, but it started to look really good, especially when they then went to a bar/shop together - it really looked like they were meeting friends and going off with them.

Can't wait to see how this progresses!
Logged
With enough work and polish, it could have been a forgettable flash game on Kongregate.

Robsoie

  • Bay Watcher
  • Urist McAngry
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2598 on: July 05, 2015, 12:45:51 pm »

Very nice moving crowd .
Are you planning some smaller towns/villages, isolated groups of houses along those very big cities and then much smaller crowd too ?
Logged

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2599 on: July 06, 2015, 10:17:30 am »

Great entry and it looks really impressive!! From my own foray into this I had to add a few things in to make it look 'realistic'. Firstly a few random groups hanging around did wonders for 'realism', as did some very basic scheduling. People aren't always going somewhere, and having them always on the move just made it seem too much like a conveyor belt rather than proper walking.

I'd suggest you designate some open spaces as meeting points and have some path to there and then just stand around for a few hundred turns (with a bit of shuffling). I'd then maybe make sure more people go into houses at night (I had some go to a bar, and most go home) and then just have one or two out on the street (martial law districts could have no one out?). I also had npcs path to other npcs on occasion - I never got this working 100%, but it started to look really good, especially when they then went to a bar/shop together - it really looked like they were meeting friends and going off with them.

Can't wait to see how this progresses!

Excellent, and I love all of these ideas! I agree about the conveyor belt, which is why atm I'm working on having NPCs break off from the road sometimes to do their own things. I do intend to have some special groups who wander around, though I'm still working on the best way to code that (probably a "follow the leader" design), such as groups of merchants, foreign travelers, religious proselytizers, etc. However, I hadn't considered the idea of having people meet then walk off (a great one, I'll add it!) and also having people hang around in logical areas (parks, monuments, etc). I also need to handle loads of other stuff like people going in/out of buildings, etc, but that comes after the exterior crowd is completely finished.

Also, I was sad not to see you at the IRDC :( - it might be in Paris next year, and I *fully expect* your presence!

Very nice moving crowd .
Are you planning some smaller towns/villages, isolated groups of houses along those very big cities and then much smaller crowd too ?

Thanks! Oh yes, we have villages; next week's blog entry will talk a bit about this, but I need to finish this system off for all city districts (working on it now), and then expand it to slums, graveyards, villages, tribal settlements and fortresses, each of which will require a couple of tweaks to make it work correctly and get a crowd which behaves sensibly and logically within that context.
Logged

Retropunch

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2600 on: July 06, 2015, 11:26:44 am »

Great entry and it looks really impressive!! From my own foray into this I had to add a few things in to make it look 'realistic'. Firstly a few random groups hanging around did wonders for 'realism', as did some very basic scheduling. People aren't always going somewhere, and having them always on the move just made it seem too much like a conveyor belt rather than proper walking.

I'd suggest you designate some open spaces as meeting points and have some path to there and then just stand around for a few hundred turns (with a bit of shuffling). I'd then maybe make sure more people go into houses at night (I had some go to a bar, and most go home) and then just have one or two out on the street (martial law districts could have no one out?). I also had npcs path to other npcs on occasion - I never got this working 100%, but it started to look really good, especially when they then went to a bar/shop together - it really looked like they were meeting friends and going off with them.

Can't wait to see how this progresses!

Excellent, and I love all of these ideas! I agree about the conveyor belt, which is why atm I'm working on having NPCs break off from the road sometimes to do their own things. I do intend to have some special groups who wander around, though I'm still working on the best way to code that (probably a "follow the leader" design), such as groups of merchants, foreign travelers, religious proselytizers, etc. However, I hadn't considered the idea of having people meet then walk off (a great one, I'll add it!) and also having people hang around in logical areas (parks, monuments, etc). I also need to handle loads of other stuff like people going in/out of buildings, etc, but that comes after the exterior crowd is completely finished.

Also, I was sad not to see you at the IRDC :( - it might be in Paris next year, and I *fully expect* your presence!

I was dying to get there but unfortunately work was unavoidable (I tried my best! apparently 'ascii-addiction' isn't quite in the DSM yet) next year though! next year!

I did follow the leader for groups, but I also had them do a check every so many turns (quite a few) to see if they still wanted to follow the leader - that led to some nice sort of 'breaking away from the group' actions. I also tried to make them stop in a group and then move on a bit later as well - I never got that right, but it seemed like a good thing to do. I eventually had nearly all npc's in groups (2-8), with only relative few on their own - that looked a lot better in my opinion and seemed more realistic.

The hardest thing for me to do was get 'standing around' to look realistic. It's surprisingly difficult to walk the line between static and mad-jittering!


Logged
With enough work and polish, it could have been a forgettable flash game on Kongregate.

Antsan

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2601 on: July 06, 2015, 05:13:45 pm »

I hate to interrupt this discussion, but…

Could you maybe put your images into spoiler tags? Every time I jump to the latest unread message, my browser first calculates the position of that message and then starts loading the pictures, leading to me ending up somewhere far above the message that actually should be at the top of my screen.
Logged
Taste my Paci-Fist

Retropunch

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2602 on: July 06, 2015, 05:54:07 pm »

I hate to interrupt this discussion, but…

Could you maybe put your images into spoiler tags? Every time I jump to the latest unread message, my browser first calculates the position of that message and then starts loading the pictures, leading to me ending up somewhere far above the message that actually should be at the top of my screen.

I'd also kinda like that just for keeping up on discussions. It'd be great if you could!
Logged
With enough work and polish, it could have been a forgettable flash game on Kongregate.

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2603 on: July 11, 2015, 06:01:39 am »

I was dying to get there but unfortunately work was unavoidable (I tried my best! apparently 'ascii-addiction' isn't quite in the DSM yet) next year though! next year!

https://www.youtube.com/watch?v=vAUOPHqx5Gs

I did follow the leader for groups, but I also had them do a check every so many turns (quite a few) to see if they still wanted to follow the leader - that led to some nice sort of 'breaking away from the group' actions. I also tried to make them stop in a group and then move on a bit later as well - I never got that right, but it seemed like a good thing to do. I eventually had nearly all npc's in groups (2-8), with only relative few on their own - that looked a lot better in my opinion and seemed more realistic.

The hardest thing for me to do was get 'standing around' to look realistic. It's surprisingly difficult to walk the line between static and mad-jittering!

Sounds very nice for groups; my groups don't yet "shatter" or move onto other things, but I've found they look better as a slightly more determined group of people walking around the map. However, I am having groups form/un-form in certain areas as you suggested, like parks, memorials, around taverns and markets, etc, and as you say there's a surprisingly tricky line between standing still and jittering like mad which I'm still refining (for the time being they come together, stand still, and then eventually dissipate, but I'm hoping to integrate a little bit of wandering in today's coding session!). There will be some screenshots coming later today in this week's URRpdate...

I hate to interrupt this discussion, but…

Could you maybe put your images into spoiler tags? Every time I jump to the latest unread message, my browser first calculates the position of that message and then starts loading the pictures, leading to me ending up somewhere far above the message that actually should be at the top of my screen.

Heh, thanks for the suggestion! Sure, will do (or at least, I'll try to remember to do so)...

Logged

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2604 on: July 11, 2015, 08:32:03 am »

This week I’ve pretty much finished off crowd mechanics for cities. I’ve also been working on the lower tiers of clothing, and the middle-class clothing looks great, but the lower-class clothing needs some work to be aesthetically comparable to the upper/middle equivalents, so I’ll show that off in a future entry. Right now, though: crowd mechanics are done (or cities), and that’s what we’re going to talk about here.

Permissions (and Guards)

Each tile of the human-scale in the game now has a variable called only_allow – this lists the permissions required to enter that tile (if the list is empty, than anyone can enter it). For example, we might have (“Religion”, 25) which means that believers of the religion with the “25” id can enter it, (“Family”, 6), and so forth. Sometimes I’m sure these will overlap, though currently they do not. At the moment these restrictions exist on upper-class mansions (where only that family and its allies can enter), warehouses in shop districts (so that random citizens don’t path towards them for no reason), religious buildings in religious districts (where only believers will enter them, though I suppose very occasionally someone from another hostile religion will…?), embassies in city centres (which are heavily guarded), and military districts per se. I’m sure some others will appear in the near future, but those are the only permissions in the city so far. As well as the existing crowd mechanics, I’ve also begun to write the code for guards who are tethered to a given permission, and are alerted if/when that permission is violated, and will act accordingly – but this isn’t a crowd mechanic, and isn’t finished, so we’ll talk about it more later. Here’s a simple example of a permissions diagram for an upper class district along with the outside of that district, where the areas inside walls for each of the major families is blocked for any outside that family (I will be adding in “lesser families” this release and giving them appropriately less-impressive crests). It’s simple, but effective (the other houses around the edge are wealthy, but not wealthy enough to merit guards, “territory” in the district, etc).

Spoiler (click to show/hide)

Irrelevant and Branching Roads

The NPCs on roads now avoid (for the most part) roads which go nowhere, and if they do go down a road which goes nowhere, they know that and will generally branch off and move towards their own target outside the road system. Equally, NPCs will no longer run in circles sometimes (a major improvement, as I’m sure you’ll all agree) and won’t branch onto tiny pieces of road. They can also cross each other intelligently without losing their sense of direction – in an earlier version two NPCs walking around each other would sometimes get “diverted” by the act of stepping around each other and wind up changing direction. Many of these irrelevant roads are also connected to permission-based areas as in the above section, and this is obviously a system I’ll be developing in more depth in the future as NPC/player relationships and factions become more complex. So this is the district from the above diagrams, where the light green roads can be walked by anyone, and the dark green roads either cannot be walked, or will only be walked by those with appropriate permissions or pathfinding objectives:

Spoiler (click to show/hide)

Moving Off-Road and On-Road

As above, NPCs can now sometimes decide to move off the road to find their own targets. They’ll do this if they see themselves approaching a dead-end road, and they’ll sometimes do this anyway regardless of what kind of road they’re on. In these circumstances they either select a region of the map where there is nothing in particular and path to there, and then continue pathing from there to elsewhere if the player is still viewing them (or despawn if they’re out of sight), or they will choose to path towards a specific door (which they have permission to enter) and then go through that door. As the below gif hopefully shows, this makes the movement of NPCs appear far more organic and stops NPCs looking like creatures just being channeled down the road with no ability for doing their own thing. We’ll obviously see how this works once we introduce important NPCs who have their own non-crowd objectives, etc, but you can see it pretty well in the gif in the section below…

Crowd Generation

The game can now generate appropriate “crowds” who might move around. For example, a civilization with the “Theocracy” and “Vassalage” ideologies might decide to have priests moving around their city, escorted by priests. A civilization with the “Monastic” (new to this release) and “Conscription” ideologies might enlist conscripts to escort high-ranking monks safely. Equally, there are some more general groups – groups of clerks and diplomats in the city centre, groups of general humans in any area, etc – who can also spawn in any nation regardless of their ideological preferences. Here’s an example of a priest and a few general citizen followers moving around a district – one will also note that certain skin tones are surprisingly hard to see against the road’s background colour. On the one hand, all roguelikes which expand their colour schemes a little bit (e.g. DF, CoQ, etc) will sometimes have certain colours which can’t be combined well, and whilst it’s annoying I’m not sure if there’s a solution; but on the other hand, maybe there is some solution? Change the road colour to make it more grey so it always stands out against all skin tones? I’ll ponder it. Either way, this gif starts with a priest (‘p’) being escorted by a bunch of soldiers (‘5′) moving around the corner around this religious building. I then just let it play on a little longer to see the slaves (since this is a slaving nation) wandering about. Note also that the game ensures the priest is “leading” the little convoy, since i had some problems with the leader’s escorts dancing around in front of the leader due to a quirk in the pathfinding system. Enjoy!

Spoiler (click to show/hide)

“Party” Generation

I’ve also implemented a system where “parties” (in the “group” sense of that word) can spawn more organically around certain areas – these include parks and gardens, around taverns, around markets, and in graveyards. In this case a number of NPCs from all over the map will path towards the area and then basically “hang around” for a while, before then making their way off. I’ve found around some places it gives an interesting feeling to these areas when you just sit and watch, and although I’m still working on exactly balancing the algorithm so that the ebb and flow of NPCs is exactly how I want it, this gif from a city centre garden is *fairly* illustrative, though it still needs some tweaking. And bear in mind, of course, one isn’t generally going to be waiting around to see the grounds form and un-form, but I’ve just stood here for this example so we could see groups forming, growing, and then disbanding.

Spoiler (click to show/hide)

District Demographics

I’ve also implemented a system for spawning appropriate demographics of NPCs (and their clothes, items, etc) for each NPC who spawns in each district. This comes down to three things: NPC type, NPC wealth, and NPC “distance”. To explain this slightly better, let’s have a look at this diagram, newly added to the in-game Guidebook (‘?’ to access). This is (currently) the full set of possible NPC types which will be able to spawn in the game:

Spoiler (click to show/hide)

So, NPC type is the “class” of NPC – we might want general humans to be spawning in lower-class housing districts, classes of soldier to spawn in the military districts (who I intend to give patrol routes to, but that hasn’t been coded yet), clerks and diplomats might be spawning in the city centre, and so forth. Capital letter NPCs will be specially tracked by the game, whereas lower-case NPCs make up the crowd. Also, nations which keep slaves will spawn slaves in the appropriate districts, just as nations which have eunuchs will spawn a very small number of those unfortunate individuals around the place. NPC wealth, meanwhile, means currently the quality of their clothing (and, in the future, the quality of any armour, weapons, bodyguards, jewelry, etc) – this is obviously closely tied to the district that the crowd NPC is spawning in, but with some variation. Middle-class districts spawn mostly middle and a few lower wealth NPCs, lower-class districts do the reverse, markets spawn an even mix, and so on. NPC distance, lastly, relates to whether the NPC spawning is from that nation and from its capital; from that nation and from a distant town or colony; or from a different nation altogether. Currently everyone who walks around in a city is from that nation (though I will of course later add groups from other nations) but might be from different regions, so you’ll see people who are culturally similar – clothing, hair style, etc – but physically different (skin tone, hair colour, eye colour, etc) as they come from different areas of the same nation. The game picks all of these according to a range of factors, and then spawns a mix of NPCs appropriate for the crowd in a given nation.

Bugs and Issues

In this process I ran into a bunch of bugs and issues. Firstly, for some reason, saving and loading the game would cause the AI for each NPC in the crowd, and the NPC itself, to become disconnected so they no longer referred to each other, meaning that when I tried to delete “self” from the list of NPCs when a given NPC no longer needed to be around, it couldn’t find self, and crashed. Weird. I tried to find a proper solution to this issue, but in the end I just changed it so that the scheduler only referenced the .npcid of each NPC, rather than the NPC itself, and that meant that even if some byte somewhere in the AI changed itself in saving/loading for reasons I could not divine, the npcid was always remaining the same (being a variable, not an instance of the AI class attached to an instance of the NPC class), and so the game could always identify the correct NPC and AI to delete upon reloading. Similarly, moving on the human-scale from district to district made some weird errors like massive groups of NPC suddenly spawning and NPCs from the next map tile teleporting into another map tile, but those were all quickly fixed. Some maps were also coming up with extremely rare tiles which didn’t have a .roadmarker variable, which denotes what NPCs are/aren’t allowed on it and whether it is a road curve which should be treated specially, but that was due to another bug I hadn’t even noticed involving the types of terrain spawning under trees (we had some trees spawning on road tiles!). This has all been sorted, and it all runs extremely smoothly. Additionally I noticed some unnecessary variables were still stored on every tile in the human-scale maps, so those have been removed, and save files have been reduced by around 15% as a result, with an attendant (very minor) improvement in load times!

Next up?

Well, the next things to do are to extend this outside cities. I need to get NPCs behaving sensibly in slums, graveyards, villages, fortresses and tribal settlements, each of which is going to need some unique changes to the algorithms I’ve worked on for cities. After that, we’ll be moving onto handling NPCs within buildings (and entering/leaving buildings), which is obviously extremely imporant. Then we’ll be moving onto unique NPCs who are specially tracked by the game because they matter (merchants in shops, rulers, nobles, etc) and who therefore need to be able to move around the world. These three steps are my three primary goals for the rest of July (it’s a lot, but I think I can crunch it), then in August I’ll be moving onto finishing off clothing styles (we’ve got feudal clothing almost finished, but I need to add military clothing, religious clothing, nomadic clothing, and tribal clothing, so there’s still a ton to do on that front!) and adding in a conversation system to the game. This system is going to be essential, so I really need to think hard about how the conversation system should work, what the balance is between the hand-made and procedural, etc. Then I need to redo how families and allegiances/associations work, fix a bunch of minor bugs from the last few versions which continue to stack up, and then 0.8 will (amazingly) be pretty much done. Aiming for a September release currently, which is around the time I’ll be starting a new job I can’t yet formally announce, and probably starting work on the other secret project I also can’t yet announce (both game-related, though!). Exciting times! Let me know what you think of this week’s development, and I’ll see you all in seven days…
Logged

Man of Paper

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2605 on: July 11, 2015, 09:08:15 am »

I've spent too long without looking into this thread. By the Nine Divines this is coming along nicely. The everything generation is looking fantastic. You were already on my list of influences but you've pretty much solidified your standing as maybe second only to Toady, if only because URR has not gotten to its first big target point yet (i.e. a fully interactive world that [insert the goal of the story here]). The procedural graphics are phenomenal, and something like that would do wonders in, well, most roguelikes, but I've been thinking about a game past Shovel Buddies and I'll discuss more of my upcoming projects, ideas, and advice asking in spoilers like I used to.

Question first though: What resources did you use to learn Python? I found a few helpful toot orioles but they covered the bare minimum and weren't great for someone with passion but no experience. I've put the learning on hiatus with a new demanding job as the only cashier that does his job properly and gives me the worst hours and, if you're familiar with the show Always Sunny in Philadelphia, the Charlie Work as well, and balancing my social life between friends and ladyfriend. So without some sort of clear instruction other than "u make lists now, u kno if/then, figure out da rest", I've found it hard to dedicate time to trying to create a universe out of nothing.

Spoiler (click to show/hide)

WHY DO YOU ALWAYS POST WHILE I TYPE THIS IS LIKE THE THIRD TIME. I don't pop into the thread for months and the ONE TIME I do and go to post...

So I take it defacing altars and the like will be something you and NPCs can do? Or am I reading too far into "though I suppose very occasionally someone from another hostile religion will…?"

In the NPC Types image it says "lower-class letters". Is that another one of those things different between 'Murica and the UK or is it supposed to be lower-case? I ask only because when I saw lower-class letters my brain automatically made the assumption that the people they were tied to were lower-class citizens.
Logged

Retropunch

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2606 on: July 11, 2015, 01:07:11 pm »

This all looks incredible as always. Very interesting and the thing with guards/permissions is a very good idea.

My one thought about the difficulty of colours matching is that it's always better to prioritise clarity over aesthetics. Looking at ASCII for any length of time (and URR is going to be getting a lot of playing!) is already a difficulty, and if you're not easily able to pinpoint things without peering it'll become painful.
Logged
With enough work and polish, it could have been a forgettable flash game on Kongregate.

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2607 on: July 14, 2015, 03:47:22 am »

Thoughts!

Well thank you! That's awesome to hear. So glad you like the graphics!  There's a few more to come this release once I start working on castle generation, which is long overdue, but I may start working on today or tomorrow. Resources for Python: I basically just used the Python+libtcod tutorial and experimented with it, and that was it, aside from very rarely going onto Stack Overflow and asking some idiotic incisive questions now and then. I bought about half a dozen books but I never actually read any of them, and incinerated donated them a few months ago when I had a big clear. I just found experimenting to be a far easier method to learn, along with asking the odd question; there was just so much in the "textbooks" that was simply unnecessary to my survival as a Python-based RL developer. It is tricky to find the time for these things when one has a lot of other commitments, I know that damned well, but I'd have to say/suggest: try to take advantage of the little gaps in time. Whenever I have 30 minutes between X and Y I try to really make something of that 30 minutes, whether it's just thnking about a new bit of code, reading half a paper I need to read, scribbling down a thousand words of a future opinion piece about something, etc, and I'm always surprised how well it adds up. Altars: yeah, I'm working out how to model the non-player conflict between factions on the appropriate scale and the appropriate ways. Maybe rare events the player will see in person combined with abstract conflicts where the player reads "Church X attacked by Group Y" but that was never actually simulated since the area wasn't actually spawned? Something like that. Lower-class letters: ha! That was a Freudian slip; I meant lower-case, but I'd been so busy handling different class districts that it just snuck in.

Shovel-related thoughts!

Spoiler (click to show/hide)

And as for more general discussion, go for it!

This all looks incredible as always. Very interesting and the thing with guards/permissions is a very good idea.

My one thought about the difficulty of colours matching is that it's always better to prioritise clarity over aesthetics. Looking at ASCII for any length of time (and URR is going to be getting a lot of playing!) is already a difficulty, and if you're not easily able to pinpoint things without peering it'll become painful.

Guards are actually temporarily being delayed to bring other things forward, since I think I want to implement them once there's a bit of a conversation system in place, so they can say "Oi, you!" and so forth. (Which I am told is what guards are wont to do). This week I want to get the crowd in towns, fortresses and villages finished tomorrow (today demanded other non-URR but still game-related priorities) then I might actually start working on castle generation. I was struggling to get to sleep last night, and in a blinding flash of clarity I realized how I wanted castle generation to work, and how bloody great it was going to look...

I totally agree re: clarity. I've done some experiments in shifting road colours towards grey a little more, and all skin tones towards red a little more, and it seems to be aiding in clarity, but I'm going to continue experimenting this week!
Logged

Ultima Ratio Regum

  • Bay Watcher
  • Game Studies Lecturer, "Ultima Ratio Regum" person
    • View Profile
    • Ultima Ratio Regum
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2608 on: July 19, 2015, 05:26:04 am »

Very busy week and relatively little to show on the URR front (and off to Vienna for another talk tomorrow), so here's a post I wrote about my experience with the rather unusual "Syncself" game/interactive video:

http://www.ultimaratioregum.co.uk/game/2015/07/18/focus-syncself-and-gaming-feedback/
Logged

chooseusername

  • Bay Watcher
    • View Profile
Re: Ultima Ratio Regum - roguelike/Borges/Eco, v0.7 released!
« Reply #2609 on: July 24, 2015, 06:32:07 pm »

Resources for Python: I basically just used the Python+libtcod tutorial and experimented with it, and that was it, aside from very rarely going onto Stack Overflow and asking some idiotic incisive questions now and then. I bought about half a dozen books but I never actually read any of them, and incinerated donated them a few months ago when I had a big clear. I just found experimenting to be a far easier method to learn, along with asking the odd question; there was just so much in the "textbooks" that was simply unnecessary to my survival as a Python-based RL developer.
It sounds like you've avoided some of the pitfalls of development.

The pitfall that I wonder about, are the questions which are basically "what happens if I do this?" or "does this work that way?"  The developer has implicitly stalled to ask something which they could likely have worked out by themselves in a few minutes, and lost whatever momentum they had.  If they even get it back after a few hours, or whenever they eventually get an answer, is up for debate.
Logged
If you are providing a save file to reproduce an Incursion bug, please compress it and attach it to an issue on the bitbucket site.  I recommend 7zip for compression.
Pages: 1 ... 172 173 [174] 175 176 ... 221