Reseed!

Well, don't you just hate it when your project relies on other projects for which you don't have source code access?
Oh yes, very much! Actually I had to look at the civ4 code in order to reproduce the exact behavior of their map systems ; fortunately some of them did not change in civ5. By the way, it was indeed nice from Borland, and Microsoft initially did something similar with dotnet (their assemblies are not obfuscated while it's very easy to decompile MSIL to produce a high-level source code, to the point that it's sometimes better than the source since the decompilers' UI make the code easier to browse than within an IDE) and released a part of their sources later. Imho, open-sourcing is mandatory for all libraries and frameworks.
 
I just had an idea, which I naturally believe to be so brilliant that I have to bring it up:

You said you have to reload the game after generating a new map because that's the only way Civ5 would update it. But Civ5 updating it is not the only way to let the player see it, is it? Reseed could generate it's own preview of the starting area, which isn't very big. I recommend a strategic view in the second-furthest zoom scale, with resources and yield marked.

So what I'm suggesting is that Reseed regenerates the map, create it's own preview of the new map's starting area, shows it to the player, and ask him if he wants to proceed with this map. If yes, reload the game as you do now; if no, generate another map and start over. This would cut down the huge amount of time wasted on reloading games whose map would turn out to be unwanted. And for people who choose to use Reseed, it's safe to bet that the percentage of maps the player would reject right away is very high.

Now, I have no idea if Civ5's graphic engine itself could be used to generate the preview. Off my head, I consider it to be unlikely. But since all the graphic elements are very much accessible to mods, it should not be feasible to construct the preview yourself.
 
I just had an idea, which I naturally believe to be so brilliant that I have to bring it up:
I thought about it myself (at first for IGE where it would fix a similar problem) but there are caveats:
* Many players do not want to base their choice on the strategic map, but the real map. Some of them (like me) are just looking for a pretty and inspiring place to start and, for them, they would then have to click one more time. Some of them base their choices on the neighborhood only, some of them on where the enemy's units are located, some of them... In the end I need a broad choice of options to suit everyone.
* As often with civ5, many technical difficulties can jump at my face (I experienced some of them before) so there is a good chance that I will just lose time for one more half-baked result (badly jointed textures, scaling corruption, crashes, ...). It also means that it would require more work than it should have.

But it's always something I have in mind and something I may give a try someday, both for IGE and Reseed.
 
@Everyone
And here is the beta5! This is one is close to the final version: it includes most of the UI changes (including the generation speed selection and a popup to automatically change options if you already built a city), bugfixes (no problem encountered in 100 map generations) and a better error handling for the troublesome edge cases. Please test it and give me your feedback. :)
 

Attachments

  • Reseed! (v 5 - beta5).zip
    31.3 KB · Views: 122
I really like the changes, looks and feels more solid. One minor thing is that the map-settings at first normal mapcreation are the defaults, not what you initially choose in the setup screen.
 
Thank you for your feedback and that bug report, xnview. I am glad you feel the design is more robust since it was my main focus for this build. :)
What about performances by the way? Earlier you had troubles with slow generation times, how long is it now and for which map size?
 
(Changed batchsize to 50k, reseed @ "fastest")

* Duel Map took 19 sec to reconstruct&reload

* Huge Map took 71 sec to reconstruct&reload

* Exit to Main Menu, Entering mods, Selecting Singleplayer, Setup Game, Changing Mapsize to Huge and Launch took 80 sec.

Clock stopped in all cases when "Begin your journey" had ended up in the middle of the screen.

Edit:

Earlier you had troubles with slow generation times...

I've never complained about that, I would take a slower generation time any day over having to go through all the menus again. =))

/Edit
 
The new interface is very clean and efficient indeed, nice work!

I suggest renaming the "Hide" button to "Minimize" ("hide" is really what the "Close" button or the Esc key does), and "Restore" to "Reseed!" (without context, how should the user know what "restore" refers to?).
 
@Xngen
Thank you for those measures. :)
So it seems like it's not slower than the standard map generation, this is a good thing but it's still quite slow to my taste. Did you notice some steps that are longer than others? I know reloading is the slowest and I can't do anything about it but maybe I can improve the performances if there is another long step.
PS: I prefer to ask you rather than rely on my own measures because they are fairly different than yours: on my computer it takes 4s for a duel map.

@Blkbird
Thank you for the cheers. :)
I agree for "minimize" but it tends to not fit in the button's room and it makes this button looks like it's more important than "close", so I kept "hide". I do not want to enlarge both buttons either, this gives an unaesthetic feeling, although I may have to do that for future translations though.
However there is no such problem for turning "Restore" to "Reseed", I will do that.
 
I've been working on a strategic map implementation since Xngen reported the one-minute generation time. After a lot of bothers, including trying three different libraries to generate DDS files for a custom tool, and civ5 giving me the usual whip slashes, I finally found a way to scale pictures and this solved all problems of course (Firaxis, remember: we need at least a complete API listing, this would have took you three hours and would have saved a total of dozens of thousands of hours for modders). There is still some work to do but expect it to be in the next beta.

PS: Count me out for civ6 modding.
 
PS: Count me out for civ6 modding.

Come on, buddy, don't be like that. In terms of moddability, the game is so different from version to version, you never know. Hell, if Civ6 switches to a scripting language I like more, I might start modding myself.
 
The problem is more like Firaxis tends to look at modding as a second-rate citizen. No documentation, not even a complete API listing, the API was designed on the fly for Firaxis' needs only without considering mods' needs, Firaxis never fixes civ5 bugs and crashes as long as they do not happen throughout the regular course of the game, the dll source is still not released after 18 months, etc. I do not see that changing for civ6.

All of that means far too much time sinks and I am tired to spend 10x more time than required to accomplish any task. When I look at what I achieved elsewhere with my skills in the same amount of time, civ5 leaves me a bitter taste.
 
That's very surprising since Civ5 has been advertized as trailblazingly mod-friedly from the start, often citing the fact that the lead designer started as a modder. Also, I always thought CivFanatics has some kind of a hotline to Firaxis when it comes to bugs and RFE for the patches?

But I agree that CiVUP and other interface mods has so far been less impressive than the equivalent mods for Civ4 at roughly the same stage (shortly after the release of the first expansion). On non-interface mods I have no comment since I've never been interested in them.
 
That's very surprising since Civ5 has been advertized as trailblazingly mod-friedly from the start, often citing the fact that the lead designer started as a modder.

As I see it Civ5 is modfriendly when you define modding in terms of modifying existing features(mods), but very awkward when trying to add new features(plugins,addons).

Gamecompanies usually have a tendency of wanting monopoly of adding expansionlike contents and new features, especielly with a DLC business model. Very often you're totally locked out from adding these custom features, but in those cases you know it and either do not bother with it or disassemble, find memory pointers and hook into it that way which is too tedious for 99.999% of all programmers. It's just a game after all. =)

@DonQuiche
I am far from unhappy with the reseed-time. It feels like it is quick and I very seldom play on huge maps. I dont have to wait for menus to load to press yet another button several times in a row and am free to go fetch some coffee or something in the mean and game is ready to be played when I come back. (Which I prolly do whether it takes 10 secs or 2 mins, I just dont have to come back to face a menu-nightmare when I am done.)
 
i like the ver 5 beta, and using "balanced" speed time its still pretty quick.

i'm not sure if this is what was asked earlier, but it would be cool to be able to just "regenerate map" without having to reload the game, in the civ4, (or was it civ3?), style. i pretty much only need/want this mod to be able to offer me different start positions/maps prior to founding my first city, and without revealing the entire map, which i consider cheating. however, if this is a difficult chore, i fully understand not wanting to do it. what i have is pretty good!
 
Well, the thing I am working on those days will offer you a preview of the new map so that you can quickly choose between different maps. You will still need to reload at the end (no possible workaround) but at least you will only do once, after you selected the map you want. It will be done by displaying a fake strategic map (that looks exactly like the original one).

Now, what you ask, Sinatra, is contradictory since you both want to be able to choose without the map being revealed. I think I know what you actually do have in mind but I would like to hear it with your words, in case you're thinking of a different scenario.

By the way, all UI suggestions for this map preview feature are welcome at this stage (terrain and rivers are done, I still have to add the overlay: resources, yields, and either units+cities or starting locations). Right now I am still working on the map itself, not its integration in the mod yet.


@Blkbird
This is the problem with advertising: they lie. :D

@Xngen
Regarding the essence of civ5 modding, this is quite a good way to put it. Now I would rather say that civ5 allows you to add any feature as long as it can be achieved with only what the vanilla UI and gameplay needed.
 
I think I agree with Sinatra.

If I get into a game and see that I only have 1 resource and am stuck at the top of the world in Snow and Tundra and don't wish to invest 2 weeks of my precious gaming time into a crappy start, then I simply want to press the button and have the game completely regenerated with the same settings that I started with.

Don't want to see the new map, don't want to see the old map... just want a new map with a new starting position regenerated, and if I don't like that one then I can press the button again and start a new one again.

Would be nice to have that button available at all times, as sometimes the level of junk terrain isn't fully apparent when I fisrst start, and would need a couple of turns to decide.

Keep up the good work DonQuiche!
 
Than the latest beta I released is perfect for you. ;)
The only downside is that, to reset later than the first turn, Reseed will need to chane some options (it will ask you first).
 
I'm sorry, you've "released" the new beta with quick regeneration? Aren't you still working on the shadow-map (if I may call it that)?
 
No it has not been released yet, but what Dunkah wanted is already fulfilled by the latest public beta.

Regarding the next beta, the "shadow map" is over and the UI integration is almost complete, I am only left with testing and debugging. I also changed how Reseed deals with troublesome maps (the ones in DLC, and the static maps that are not listed by Reseed today): they are now always listed, with a lock on the left side and an error message instead of the map options when you select one (and a "how to fix it" button to explain the workaround for DLC). The previous behavior was confusing for the user since he couldn't know why some maps were not listed.

Finally there are also a couple of features I may include before I release it:
* Check whether some elements cannot be reset (religions, etc), and list them on a popup window to warn the user and ask for confirmation. it will also allow me to simplify the "new map" button's tool tip (it is kinda messy today).
* A simple "restart" button, that will restart your game without changing the map, maybe reshuffling positions. This will be especially useful if you started your game with a static map like Earth since Reseed cannot recreate those ones. It "only" needs to clean up the map and reset everything.
 
Top Bottom