Coder Social home page Coder Social logo

Comments (8)

SomeTroglodyte avatar SomeTroglodyte commented on June 26, 2024

Sounds familiar. Didn't we already do something in this direction? Wasn't there a similar issue not too long ago?

from unciv.

PLynx01 avatar PLynx01 commented on June 26, 2024

Sounds familiar. Didn't we already do something in this direction? Wasn't there a similar issue not too long ago?

I've posted similar issue several months ago, but I wasn't able to implement it back then.

I recently took a second try to implement that function, so maybe I will post a PR with that feature.

from unciv.

PLynx01 avatar PLynx01 commented on June 26, 2024

That's it:
#10255

from unciv.

SomeTroglodyte avatar SomeTroglodyte commented on June 26, 2024

See - even if we ignore you, we remember 🙃 ðŸĪŠ - bad joke.

Without Studio open I associate

  • I think New game screen is a mess. Too cluttered, the portrait mode works - maybe, not really optimal, and the implementation of interrelations between different controls is too complicated. Said so before. Very tempted to ditch the thing and start over, with a "wizard" approach - then anything on "done" pages is static and won't need to adapt to new choices. Started once, didn't get far - reusing existing elements isn't trivial either.
  • That story just means - For any new UI element taking space - think small or think really big.
  • You need the map json parsed to read out starting locations. Long ago, new game didn't load the map at all until you were done. Now - map preview (the graphical one) must load something. Or - is there a TileMapPreview class? Look into what that does and how and which usecase it serves. Might be fine to add the starting locs to the preview to parse them quicker...
  • Don't forget Coroutines. At least map preview (the graphical one) runs async, so make sure the info you need now doesn't arrive until later.
  • I believe it possible the random civ placement routine already favours nations with a starting loc - check that. No, it's not the code in MapRegions, that stuff isn't used for loaded maps.

Once you know which nations a map "endorses", you can play around. Simply sort them to the top in Nation Picker? New buttons for auto-population? Possibilities...

from unciv.

PLynx01 avatar PLynx01 commented on June 26, 2024

See - even if we ignore you, we remember 🙃 ðŸĪŠ - bad joke.

Without Studio open I associate

  • I think New game screen is a mess. Too cluttered, the portrait mode works - maybe, not really optimal, and the implementation of interrelations between different controls is too complicated. Said so before. Very tempted to ditch the thing and start over, with a "wizard" approach - then anything on "done" pages is static and won't need to adapt to new choices. Started once, didn't get far - reusing existing elements isn't trivial either.

Yes, I agree with you that new game screen is somewhat cluttered. I think we should make the "Specified Starting Locations Mode Wizard". It would be the separate screen, partially independent from the new game screen.

  • That story just means - For any new UI element taking space - think small or think really big.
  • You need the map json parsed to read out starting locations. Long ago, new game didn't load the map at all until you were done. Now - map preview (the graphical one) must load something. Or - is there a TileMapPreview class? Look into what that does and how and which usecase it serves. Might be fine to add the starting locs to the preview to parse them quicker...

I used the MapSaver class to get the starting locations. I made them as a public variable

  • Don't forget Coroutines. At least map preview (the graphical one) runs async, so make sure the info you need now doesn't arrive until later.

Coroutines? When I used the MapSaver class I didn't use coroutines or async. The map loaded quickly. (My CPU is i5-13500, so it's very powerful). But on low-end android device it might be a problem.

  • I believe it possible the random civ placement routine already favours nations with a starting loc - check that. No, it's not the code in MapRegions, that stuff isn't used for loaded maps.

Once you know which nations a map "endorses", you can play around. Simply sort them to the top in Nation Picker? New buttons for auto-population? Possibilities...

There is indeed many possibilities, especially when making the separate wizard screen, mentioned above.

You could list the UI elements necessary for the "Specified Starting Locations Mode Wizard". We need to discuss that with @yairm210 , other devs and players.

from unciv.

PLynx01 avatar PLynx01 commented on June 26, 2024

@SomeTroglodyte what is your opinion? Please reply.

from unciv.

SomeTroglodyte avatar SomeTroglodyte commented on June 26, 2024

Please reply

Can't quite imagine - either I invest time and basically do half the work to see what could work, or you do the work and show off mock-ups, or - you ask specific questions. But also - I'll be offline soon for a few weeks.

Idea while typing this - there was that thing where you could limit the "pool" of nations "random" is allowed to choose from. What if you do no more UI than a Toast "Hey there were starting locations, so we set your random pool to those, go look over there" - for a first minimalistic version? Sounds too easy - what if there's just one st-loc in there, or some but less than the user asks for...

from unciv.

SeventhM avatar SeventhM commented on June 26, 2024

@PLynx01 Probably some one will look over this issue and find a good way to implement it (For maps with predefined Civs, I would assume something where the Civs themselves are listed as normal, but can't be changed besides who is or isn't AI, But I can imagine it maybe being messy on the backend. Haven't checked).But please don't have two issue for the same thing. Since this is almost entirely the other issue, I'm closing the other issue

from unciv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google âĪïļ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.