Search found 77 matches
- 21 Aug 2008, 15:01
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Unfortunately, real life issues have meant that I've put my side of development on hold for a little while -- I've been AFK for a few weeks, and have to catch up with work commitments for another fortnight. Once that period is over, I'll be able to spend some time in earnest to get this sorted out. ...
- 15 Jul 2008, 10:21
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Well once you're happy with what you've done, let me take a look at what you've got. I'll merge it into the SVN with whatever changes might be required so that we can get testing.
- 14 Jul 2008, 17:05
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
We're still at the very early stages of development here. I expect it will be another month before this is "production ready". This AI interface isn't an important part of the next release since the current won works fine, so I don't expect we'll be done for 0.77. I'd rather we had the int...
- 13 Jul 2008, 14:20
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Great work hoijui! I think that the first option: struct SMoveUnitCommand { int unitId, ...}; struct SBuildUnitCommand { int unitId, ...}; struct SAttackUnitCommand { int unitId, ...}; is more sensible; each one of these is bound to a particular commandID; exactly like the Events I implemented. That...
- 12 Jul 2008, 15:03
- Forum: Engine
- Topic: new AI subsystem maintainer
- Replies: 12
- Views: 2190
Re: new AI subsystem maintainer
Any changes to the AI system will be discussed on the forums before they are done -- we're working together on this one :) I'll make sure that any changes to the system don't affect any of the AIs that are in the repository. The current work that's been done on this works fine with RAI with very min...
- 09 Jul 2008, 18:29
- Forum: Engine
- Topic: new AI subsystem maintainer
- Replies: 12
- Views: 2190
Re: new AI subsystem maintainer
Thanks for the welcome.
The new AI system will take some time to roll in, and I'll do it whilst maintaining the old system too. Hopefully, you won't feel the transition. Is there an indication of when you wan the next stable release to be ready?
The new AI system will take some time to roll in, and I'll do it whilst maintaining the old system too. Hopefully, you won't feel the transition. Is there an indication of when you wan the next stable release to be ready?
- 07 Jul 2008, 14:12
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
thinking about it... i think your approach with getFunction() is technically not possible. Actually, it's used in the code I uploaded -- function pointers are required to expose the library interface. Your argument about other languages isn't quite applicable; there would always need to be an inter...
- 07 Jul 2008, 13:39
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
how should i convert float3 <-> SAIFloat? You don't need to: inheritence means that you can make sure the type is an SAIFloat for any data you're exporting from the engine. If you're pushing data from the AI to the engine that's an SAIFloat, then you can instantiate the float3 using the default con...
- 07 Jul 2008, 13:36
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
if you go to page 5 of this thread, the second post (Tobi's first post on that page), you find the reasons why not to use a generic callback function (like your getFunction(), zenzike). they are purely technical, low level. Actually no, this is a different solution. Tobi's comments were about passi...
- 07 Jul 2008, 12:39
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Nothing is missing: I finished the handleEvent side of things, and hoijui is working on the handleCommand. I had a thought about the function callback system though. I expect it will get rejected on grounds of "too complicated", though it does mean that all AIs are completely forward and b...
- 06 Jul 2008, 23:33
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Id just rather not add more and more dependencies. A pure C API with implementation libs for bindings and other interfaces is more appropriate than taking a single library and putting it in as a one shoe fits them all policy. I totally agree with AF. If we want to have a DBus (or other network / me...
- 05 Jul 2008, 12:43
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
It seems to me that using a heap of memory is not the best way of communicating within or between AIs. A messaging system is better because: An established protocol is more future proof. The events and commands can be registered, which facilitates debugging and profiling. The AIs can use the handleE...
- 29 Jun 2008, 22:23
- Forum: Engine
- Topic: TASClient Single Player mode
- Replies: 40
- Views: 5313
Re: TASClient Single Player mode
Requiring IE seems like a terrible move: why not make it support firefox so that Linux users aren't neglected?
- 27 Jun 2008, 18:59
- Forum: Engine
- Topic: Naughty naming and float3
- Replies: 11
- Views: 3154
Re: Naughty naming and float3
I thought the inheritance is a good thing, since it means we can still have member functions in the subclass (such as synced operations), yet be able to send the base datastructure to a C interface. If we merge float3 and SFloat3 then we can't pass the new float3 through a C interface (as I understa...
- 27 Jun 2008, 18:29
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
Absolutely. I suggest we use SFloat3 for this purpose, since it's just a C style struct. I actually think SFloat3 should be named float3 since it's the more primitive type, but it seems that idea has been rejected on another thread [1].
[1] viewtopic.php?f=12&t=15318
[1] viewtopic.php?f=12&t=15318
- 27 Jun 2008, 17:46
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
I don't think float3 is actually safe, since it inherits SFloat3. Inheritance usually isn't the same across compilers.
- 27 Jun 2008, 17:46
- Forum: Engine
- Topic: Naughty naming and float3
- Replies: 11
- Views: 3154
Re: Naughty naming and float3
It's actually the reason why it's not safe to cast float3: inheritance isn't done the same well across compilers.Tobi wrote:I don't even know why SFloat3 was made in the first place.
- 27 Jun 2008, 11:47
- Forum: Engine
- Topic: Naughty naming and float3
- Replies: 11
- Views: 3154
Re: Naughty naming and float3
Thanks; yes I know that in C++ classes and structs are the same except for their default access modifier. I should have been a little clearer in what I was saying: the AI interface requires a C type struct: a public class with no member functions, other than (if required) inline constructors with no...
- 27 Jun 2008, 11:16
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
That won't work since there's a member function. We couldn't reliably have an array of these objects.hoijui wrote: what about this?:Code: Select all
class XZY { float x, y, z; void foo(); };
- 27 Jun 2008, 00:41
- Forum: AI
- Topic: Interface Redesign
- Replies: 447
- Views: 58122
Re: Interface Redesign
For the record, here's a pretty good article [1] that explains some of the details we're dealing with. I'll be heading for this kind of C/C++ interaction as soon as people confirm that they're happy with the way handleEvent works. In particular, I'll make the AIEvents subclass the AISEvents structs,...