Jump to content


Community Members
  • Posts

  • Joined

  • Last visited

  • Days Won


luziferius last won the day on July 17 2012

luziferius had the most liked content!

luziferius's Achievements


Discens (2/14)



  1. The reason multiplayer didn’t work is likely that wireless client isolation (for an example, see https://documentation.meraki.com/MR/Firewall_and_Traffic_Shaping/Wireless_Client_Isolation) was enabled in the network settings. This option exist so that devices can’t bother each other and prevent hackers from abusing bad configurations on other machines. It should be enabled on all kind of public networks, except for explicit LAN-party settings. It prevents client-to-client communication by dropping all client packets not targetting the default gateway, thus rendering any kind of local multiplayer impossible. So the best bet is to bring your own networking hardware with you, for example any kind of non-OEM consumer router that can operate on it’s own without remote configuration. Then connect the PCs via LAN. If needed (because of lacking wired interfaces), you could open your own, secured wifi network, named for example “0ad Multiplayer”. When doing Wifi access points, it is polite to ask the event’s network admin for permission, because it can cause congestion issues and throw off their channel mapping across the area.
  2. to verify a compile/package bug you could switch to the 0ad ppa here: https://launchpad.ne...fg/+archive/0ad (or lastest dev snapshots from here) if those error too, its somewhere system related, if those work, its a packaging bug in the ubuntu repositories
  3. you may also use windowed full screen then the window manager just removes the borders, sets the window’s resolution to that of the monitor and puts it on top. for KWin (KDE 4) I know a way to always run 0ad in this mode(I use it and i’ts quite nice): http://www.wildfireg...98 you can move the window between monitors by <ALT>+mouse drag’n’drop
  4. ^^ no problem. I’ll try to contribute where I can, and such things don’t need code knowledge. 2 monitors and enough cpu cores to feed 6 parallel running atlas instances really helps speeding such tasks up as a general rule: every map using the pathplacer js code needs at least 2 players, otherwise the code will fail with an exception. I only know of Canyon. maybe Dark Forest. If I don’t forget it, it’ll be done tomorrow.
  5. Now that we have player number restriction per map size, I’ve looked into the available map scripts.(opened 3 atlas instances and generated every map in tiny+4players, small+6players and medium+8players) those maps are working well with the default [4, 6, 8, 8, 8, 8, 8]: Ardennes Forest Atlas Mountains Cantabrian Highlands Continent Corinthian Isthmus Cycladic Archipelago English Channel Fortress Gear Gulf of Bothnia (There are no islands in the gulf, but the map description says so) Hyrcanian Shores Kerala Lake Latium Lorraine Plain Neareastern Badlands New RMS Test (well…) Northern Lights Oasis Persian Highlands Pyrenean Sierra Rhine Marshlands Rivers Saharan Oases Sahel Watering Holes Syria The Nile Volcanic Lands those maps need tweaking: they had different flaws with the default, like beeing largely unfair or otherwise broken layout (esp Migration, where all islands are connected with default restrictions) Archipelago (with 4 players on a tiny map, thats not an archipelago at all…) [3, 6, 8, 8, 8, 8, 8] Belgian Uplands (largely unfair with 6 players on a small map) [4, 4, 8, 8, 8, 8, 8] Canyon [3, 6, 8, 8, 8, 8, 8] Corsica vs Sardinia (very crowded) [2, 4, 6, 8, 8, 8, 8] Deep Forest (not a real forest with 4 players on a tiny map) [3, 6, 8, 8, 8, 8, 8] Guadalquivir River (northern players very disadvantaged) [2, 4, 6, 6, 8, 8, 8] Islands (generaly generates very slowly) [2, 4, 6, 8, 8, 8, 8] Migration (restrictive, otherwise islands may be connected; even on giant with 8 players and seed 9560) [2, 3, 5, 5, 6, 7, 8] Snowflake Searocks [3, 4, 8, 8, 8, 8, 8] The Unknown scripts should get those, since some of the included variations may not work well with the default Unknown [2, 4, 6, 8, 8, 8, 8] Unknown Land [2, 4, 6, 8, 8, 8, 8] Unknown Nomad [2, 4, 6, 8, 8, 8, 8]
  6. while you are at it… Would it be ok to either reduce the default player count to 3 or default map size to Normal for random maps? I think it’s odd that the game defaults to 4 players on “Medium (3 players)”… Either 3 players on “Medium (3 players)” (better performance wise) or 4 players on “Normal (4 players)”. BTW the link in your last post is broken…
  7. I would say change the constant MAX_PLAYERS_BY_MAP_SIZE_RMS to: const MAX_PLAYERS_BY_MAP_SIZE_RMS = [2, 2, 3, 4, 6, 8, 8]; this way it exactly matches the number of players in the size description. with current settings, you can’t play with 8 players on a “Very Large (8 players)” map… or const MAX_PLAYERS_BY_MAP_SIZE_RMS = [2, 3, 4, 5, 7, 8, 8]; this way it matches number of players in the size description +1 or: const MAX_PLAYERS_BY_MAP_SIZE_RMS = [4, 6, 8, 8, 8, 8, 8]; that one would be very permissive and might not work with many maps about minimal player count: some RMS might not work with 1 or 2 players… Canyon throws an exeption with only one player… or the layout may be broken (for whatever reason) but I think one of those is a reasonable default: const MIN_PLAYERS_BY_MAP_SIZE_RMS = [1, 1, 1, 1, 1, 1, 1]; const MIN_PLAYERS_BY_MAP_SIZE_RMS = [2, 2, 2, 2, 2, 2, 2]; it should only be set otherwise by a RMS that needs this
  8. Tested it once(configured 6 players, changed to Tiny, the UI updated properly, raising map size kept the 2 players, raised again to 6 players, switched to Tiny, clicked on Start, got a match with 2 players) working!!
  9. this one is broken… you need the placement in onGameAttributesChange() to update the UI. your current version does not Update the UI. It just needs to additionally set the player count with selectNumPlayers(). I just don’t know a sane position for this one.
  10. I really don’t know the code, where should that js file be placed? EDIT: found it. ~/.cache/0ad/mods/public/gui/gamesetup/gamesetup.js I’ll try what I can… EDIT2: looks like a logic bug. the player number is not updated. it just updates the UI and removes the player from the UI. It does not set the actual player number variable: select 3 players, change to tiny. UI says 2 players. click start. 3 players are placed. you should call selectNumPlayers() when you have to remove a player due to map limitations. that function seems to be able to do everything needed. so:(something like this pseudo-code) if (current_player_count > max_supported_count_by_current_size) selectNumPlayers(max_supported_count_by_current_size); I just haven’t found the line where to place this.
  11. you still include the old mapSizeToSizeIndex(size), but don’t call it at all… a minor typo in one of the first comments: 'player linit' (just use search function to find it)
  12. just a suggestion, I can’t code js, but a quick google query told me it’s possible change function mapSizeToSizeIndex(size) to: function mapSizeToSizeIndex(size) { var sizeIndex = undefined; switch (size) { case 128: sizeIndex = 0; break; case 192: sizeIndex = 1; break; case 256: sizeIndex = 2; break; case 320: sizeIndex = 3; break; case 384: sizeIndex = 4; break; case 448: sizeIndex = 5; break; case 512: sizeIndex = 6; break; default: //some error handling here, since invalid size passed } return sizeIndex; } or: (shorter version without a variable) function mapSizeToSizeIndex(size) { switch (size) { case 128: return 0; case 192: return 1; case 256: return 2; case 320: return 3; case 384: return 4; case 448: return 5; case 512: return 6; default: //some error handling here, since invalid size passed return undefined; } } or: the shortest version that uses the specific values 'size' can have this one is fragile, you may use a variable for the calculation and error-check before returning the value function mapSizeToSizeIndex(size) { return (size/64-2); }
  13. I looked at those from about 2m distance, they just look awesome! are those textures downscaled from a high-res source? and the same with the models? then you could later include the high-res version for ingame campaign cinematics (if planned)
  14. it becomes real-time if you manage to stare your enemy down > < 1. Empire Earth 1+Addon 2. OilRush 3. CnC 3
  15. ok, I tested it on my machine using my limiter script: I can provide tests with the following values: CPU-number: 1 to 6 clock speeds(both maximum and minimum; in kHz): one of 2800000 2200000 1500000 800000 I just tested: build: latest git master as of now map: combat Demo(Huge) singlecore 1,5GHz: no stalls at all(!), you can clearly hear the sim update: music plays smooth, every 3-4 seconds you hear a bunch of battle sounds from a sim update dualcore 800MHz: no stalls, similar to singlecore 1.5GHz this is below the mimimal system requirements: singlecore 800MHz: some stalls(only directly after sim update;the stalls are infrequent and short), sim updates very infrequently(+10seconds/sim update in mid-battle)
  • Create New...