FLHerne
-
Posts
16 -
Joined
-
Last visited
Posts posted by FLHerne
-
-
Unless I've missed something, there hasn't been an update on the finances since April last year. The fundraiser page on Indiegogo hasn't been updated since then either.
Since the original plan for using the Indiegogo money fell through, have other programmers been funded to work on the game as described in that last report? If not, what will be done with the money collected?
Another financial report would be nice sometime.
- 1
-
At the moment, AIs are run synchronously on every client like the rest of the simulation. Not only does this require each client PC to do the processing for every AI, it makes development of AIs harder because they need to be perfectly deterministic or else create obscure and hard-to-fix bugs.
Is there any reason why each AI couldn't be run on a single client (either all on the game host or automagically distributed somehow), with all simulation-modifying commands being sent in the same manner as human players? Such an arrangement would reduce the load on each client and remove the need for deterministic AIs.
One small downside would be that saving a multiplayer game wouldn't be able to preserve AIs being run on other clients - perhaps in this case the serialized AI states (how big are they?) could be requested from the clients running them?
-
It might also cause performance issues, because the poly-count of the building models assumes the map isn't totally covered with buildings?
-
A random idea I came up with reading the last page or so is to make techs significantly (but not cripplingly) more expensive if researched in eras later than when they're first available. This means you can go back and start a new tech branch that you ignored before, but it'll cost more than if you'd focused on it originally.
You could postpone your era advancement, but that restricts your access to newer techs on already-explored branches, so you can go through the tech tree breadth-first or depth-first (or in-between), the former being much cheaper overall but giving later access to advanced tech.
Might be a nightmare to balance properly though; postponing advanced tech access would need a lot of offsetting, which might just ruin the game.
-
Can you tell me a specific case were a variable has to be undefined ? I thought this was a bug source even in recursive functions.
You may be confused with languages like C, where an 'undefined' variable simply has a random value?
In Javascript 'undefined' is a specific state that can be tested for.
-
Our current pathfinder supports this, but it is the source of a lot of performance problems. So with the pathfinder redesign, we opted for a faster algorithm (A* + JPS). This algorithm expects a uniform cost grid. So no faster or slower places. It could maybe be modified so a map could have a few different speed regions (like define the center of a map as a slow swamp), but it won't be precise enough to have roads.
One of the authors of JPS proposed a way to do non-uniform grids:
If your grid maps contain uniform cost regions, simply treat any neighbour which is of a different terrain type to the current node, as forced. This will allow you to quickly search across a uniform-cost region, stop to expand a node when crossing into a different region, and continue jumping on the other side. I don’t yet know how well this approach works because I haven’t tried.
...
I hope to write a detailed article on this problem in the near future. With, I hope, a better generalisation and some results.
Two years later he still hasn't written that article (or I can't find it), but some people report that his proposed method works as expected. ;-)
-
I find it a bit weird to have so many different versions. I know that C language has 99.
It doesn't - C99 is the 1999 revision of the language standard. C11 was published a couple of years back (in 2011), although some compilers (looking at MSVC) don't even support C99 fully yet.
[/offtopic]
-
That's...an even worse idea.Then how about converting the game code to python to make it easier to program?
It has all the previously-described downsides of abandoning years of work and restarting from scratch, unlike your previous idea doesn't even have the merit of using some pre-existing work, and then you want to do it in an interpreted language? Imagine the JS problems, but magnified enormously and affecting the entire game, with no possibility of reaching native performance even if done well.
Reality (or knowledge) check urgently needed...
Too harsh, maybe?
-
The game's not even in Beta yet! Still in Alpha. Review looks quite good, a couple of distinctive features you didn't mention are the territory system and citizen-soldiers.
-
All these graphics look far better than the current ones. Very nice!
I think the third tooltip looks best, the second looks 'unbalanced' with the letter obscuring one of the decorative thingies.
In that Match Setup picture, why does the Map Description box have normal text with spirally things in the header when all the others have italic text between the other style of decoration? It doesn't really fit in (although the regular text as also seen in the first few images looks better than italic IMO).
- 1
-
Viewing the main play0ad page with Qupzilla 1.3.5, the text in the 'Tweets' box doesn't quite fit - it overhangs like this: http://imgur.com/a40OI3r
In Chromium, the text is a bit smaller, and it fits (although still ending "ph...", which is a bit odd seeing as it takes up more space that way?).
In case you haven't encountered Qupzilla, it's a Webkit-based browser; this version has WebKit 534.34.
New website is very nice, though!
-
As someone whose newest laptop still has a GMA950, I'd obviously rather you didn't break 0ad on it... . Despite what some have said above, it is in fact playable to a reasonable extent.
However, I can also see the logic in dropping support for my old hardware, as I gather the overlap between "new enough to play 0ad tolerably" and "old enough to not have the required features" is somewhat restricted. I can always play on my desktop (Pentium D, HD 7770 ), which gives far better graphics and performance anyway. If you think dropping old hardware support will have significant benefits, go ahead and do it - I'll be waiting to play with whatever new features it allows...
Even shorter: Personally, it would be better if you kept the old hardware support. If you don't and that allows you to make the game better, I can put up with that. Thanks for the awesome game.
-
Looks nice - I'm not so sure about the way the guy's spear pokes into another 2 quadrants though, perhaps you could make him a little smaller to fit into one quadrant?That is a pretty nice cover!
I combined the "0" CD with the unit art CD. Let me know what you think! Would it look better with two images on opposite sides, or is one large image better?
--Brynn
-
OpenTTD, Minecraft*, warzone2100, AoK, SimSig, PC Elite**, SWBFII.
*Tekkit
**in DOSbox
*Tekkit
-
I compiled the latest revision on Linux Mint 13, x86_64, using gcc 4.6.3. No compile errors.
When run, it opens a window in which I can (very briefly) see the main menu, then crashes.
Alpha 10 as installed from the PPA works fine.
CPU is a Pentium D, graphics is a Radeon 7770 using the proprietary drivers.
Output to the console, when run on its own and using gdb:
[username]$ ./pyrogenesis
Cache: 500 (total: 3954) MiB
TIMER| InitVfs: 105.048 ms
AL lib: pulseaudio.c:331: PulseAudio returned minreq > tlength/2; expect break up
Sound: AlcInit success, using PulseAudio Default
TIMER| InitScripting: 382.64 ms
TIMER| CONFIG_Init: 163.607 ms
TIMER| RunHardwareDetection: 299.75 ms
TIMER| write_sys_info: 55.9676 ms
TIMER| InitRenderer: 206.247 ms
TIMER| ps_console: 142.597 ms
TIMER| ps_lang_hotkeys: 1.95219 ms
TIMER| common/setup.xml: 82.5211 ms
TIMER| common/styles.xml: 33.25 ms
TIMER| common/sprite1.xml: 5.99055 ms
TIMER| common/init.xml: 69.2084 ms
TIMER| common/common_sprites.xml: 43.342 ms
TIMER| common/common_styles.xml: 3.27125 ms
TIMER| pregame/sprites.xml: 17.7944 ms
TIMER| pregame/styles.xml: 380.317 us
TIMER| pregame/mainmenu.xml: 73.1337 ms
TIMER| common/global.xml: 2.38862 ms
Using Xcursor to sys_cursor_create 32 x 32 cursor
Illegal instruction
[username]$ gdb ./pyrogenesis
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2) 7.4-2012.04
Copyright © 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /home/francis/Projects/0adgit/0ad/binaries/system/pyrogenesis...done.
(gdb) run
Starting program: /home/francis/Projects/0adgit/0ad/binaries/system/pyrogenesis
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Cache: 500 (total: 3954) MiB
TIMER| InitVfs: 954.397 us
[New Thread 0x7fffcc983700 (LWP 4689)]
[Thread 0x7fffcc983700 (LWP 4689) exited]
[New Thread 0x7fffcc983700 (LWP 4690)]
AL lib: pulseaudio.c:331: PulseAudio returned minreq > tlength/2; expect break up
[New Thread 0x7fffc3fff700 (LWP 4691)]
Sound: AlcInit success, using PulseAudio Default
[New Thread 0x7fffc37fe700 (LWP 4692)]
TIMER| InitScripting: 18.284 ms
TIMER| CONFIG_Init: 19.64 ms
[New Thread 0x7fffc29ff700 (LWP 4693)]
[New Thread 0x7fffc21fe700 (LWP 4694)]
TIMER| RunHardwareDetection: 28.9302 ms
TIMER| write_sys_info: 17.4639 ms
[New Thread 0x7fffc0f93700 (LWP 4695)]
TIMER| InitRenderer: 10.6816 ms
TIMER| ps_console: 17.9633 ms
TIMER| ps_lang_hotkeys: 1.89157 ms
TIMER| common/setup.xml: 2.56158 ms
TIMER| common/styles.xml: 215.158 us
TIMER| common/sprite1.xml: 5.30918 ms
TIMER| common/init.xml: 3.24704 ms
TIMER| common/common_sprites.xml: 5.86495 ms
TIMER| common/common_styles.xml: 1.07546 ms
TIMER| pregame/sprites.xml: 1.52365 ms
TIMER| pregame/styles.xml: 142.23 us
TIMER| pregame/mainmenu.xml: 19.6841 ms
TIMER| common/global.xml: 1.09722 ms
Using Xcursor to sys_cursor_create 32 x 32 cursor
Program received signal SIGILL, Illegal instruction.
0x00007ffff6326e77 in nvtt::InputOptions::setTextureLayout(nvtt::TextureType, int, int, int) () from /home/francis/Projects/0adgit/0ad/binaries/system/libnvtt.so
Game immediately crashes. Is SSE2 a requirement?
in Bug reports
Posted
Was fixed in response to your ticket, by removing a build flag. You could compile the current release with SSE2 disabled if you don't want to wait for the next release.
I'd prefer that was left enabled, to be honest - the vast majority of pre-Core2 boxes will never run 0ad playably in any case, so reducing performance for everyone else doesn't seem like a good trade-off.