Page MenuHomeWildfire Games

New RMS - Aethiopia.
ClosedPublic

Authored by lyv on Feb 25 2018, 5:36 PM.
Tags
None
Subscribers
Restricted Owners Package
Restricted Owners Package
Restricted Owners Package
Tokens
"Like" token, awarded by elexis.

Details

Summary

A new random map depicting an area near the kushite kingdom.

Test Plan

Generate a few times.

Diff Detail

Repository
rP 0 A.D. Public Repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

lyv created this revision.Feb 25 2018, 5:36 PM
Owners added a subscriber: Restricted Owners Package.Feb 25 2018, 5:36 PM

(I want a second biome for that like we have on Persian Highlands or Gulf Of Bothnia. This way we can have that rain season thing. I can look into doing that. But FeXoR starting a map too, perhaps we want it there. We will see)

Tested and map looks good to go. Just some nitpicking which I can implement too when committing if you want.

binaries/data/mods/public/maps/random/aethiopia.js
45 ↗(On Diff #5931)

sort, smallest number first, offsets last

47 ↗(On Diff #5931)

const for consistency

89 ↗(On Diff #5931)

const riverAngle = Math.PI/5; or randomAngle()?

105 ↗(On Diff #5931)

-2.5 some constant
Since z is unused, better move this to a createArea call and a HeightConstraint and a createObjectGroups one.
This way the distribution of actors is also less regular.

122 ↗(On Diff #5931)

log entry already occurs in the function, nuke

125 ↗(On Diff #5931)

// Playerclass marked below
just for consistency

130 ↗(On Diff #5931)

(Can also increase the distance to clPlayer by 10 everywhere, but that actually costs a lot of performance since more area must be searched everytime, refs #5011)

136 ↗(On Diff #5931)

(we have desert berries now too, but the green ones are good too)

157 ↗(On Diff #5931)

maybe kushiteTownPositions?

158 ↗(On Diff #5931)

++retryCount, a thing we do

173 ↗(On Diff #5931)

(Found it, randomPositionOnTile, but that only goes from 0 to 1 so meh)

175 ↗(On Diff #5931)

createObjectGroup

177 ↗(On Diff #5931)

g_Map.log(...

180 ↗(On Diff #5931)

for ... of

185 ↗(On Diff #5931)

C

189 ↗(On Diff #5931)

What's the idea behind doing things only on the right side of the map? (If it should only be one side of the river, that area could be marked inside paintRiver, but removing the condition would be ok for me too)

208 ↗(On Diff #5931)

Got this:

probably more river avoidance, probably something that mathmatically relates to the numbers inside the paintRiver function.
Alternatively do the dune texturing when placing them. Was alrady wondering if they should get a custom texture, although it looks ok currently.

210 ↗(On Diff #5931)

close on previous line

217 ↗(On Diff #5931)

They should avoid the Kushite cities. I got a mapgen where trees ended up inside buildings.

240 ↗(On Diff #5931)

inline the variable (these group calls have a bad past, anyway OT)

299 ↗(On Diff #5931)

Don'T use the deprecated call, just remove the Deprecated and make sure that the numbers are still good.
The Deprecated one doesn't do retries correctly and sometimes places only 1 thing when 10 were requested and 10k retries given.

331 ↗(On Diff #5931)

Fish?

binaries/data/mods/public/maps/random/aethiopia.json
6 ↗(On Diff #5931)

can set the right filename already.

Ping @Sundiata to review the map description and possibly the map altogether.

7 ↗(On Diff #5931)

Keywords "new"

lyv updated this revision to Diff 5973.Feb 28 2018, 4:31 PM
elexis accepted this revision.Mar 1 2018, 1:49 PM
  • Some missing semicolons, mapSize unused, ); not on a separate line, some missing newlines at retry counts.
  • Nice city patches
  • Lions should either not be placed on nomad or avoided widely, doing the former now since it's easy.
  • Too many giraffes. With that amount of food, it will be a pure hunting and cavalry rush map. Reduced them from 3*players to 2*players and increased distance to players slightly.
  • Decreased pyramid count from 10 on large maps to 7.
  • Creating bumps consumes 20 o 40 sec mapgen time, not sure how it can be improved at first glance, probably just reducing the count. Actually I have the StaticConstraint at hand, using that reduces the time by 50%, #5011.
  • Most of the time one player is spawned on the left side. That might cause some imbalances, but it also creates interesting non-linear gameplay effects, so ok to keep it. Could think about placing a dock on the other side of the river however (similar to migration).
  • Typically actors are created at last, so moving the calls to the bottom
  • Those kushite gaia units should become defensive. We need RMS support for that eventually so we don't have to put a trigger script each time (ticket out there).
  • Spaces after { and before } for objects
  • Animals and Nomad units must avoid gaia units and pyramids
  • Straggler trees must avoid food

Thanks for the great map M.!

binaries/data/mods/public/maps/random/aethiopia.js
99 ↗(On Diff #5973)

0.07 comes from guadalquivir river. That's not a problem to have a tiny river there since that has passages.
But on tiny maps one can't build ships, so scaleByMapSize(reasonableMinSize, 0.07*512) it is.

126 ↗(On Diff #5973)

This call consumes a bit much time, but testing revealed that we need that many reeds somehow.
(createObjectGroupsByAreas would likely be much faster (#5011), but creating an area each time seems wasteful. We will see.)

This revision is now accepted and ready to land.Mar 1 2018, 1:49 PM
This revision was automatically updated to reflect the committed changes.
Owners added subscribers: Restricted Owners Package, Restricted Owners Package.Mar 1 2018, 2:07 PM