Jump to content

Home

ICARUS vs. COG (anticipating ICARUS2)


Fardreamer

Recommended Posts

I'm a pretty experienced JK modder, and I feel I will have a great desire to mod for JO as well, so recently I have been looking into the ICARUS scripting system of Elite Force, knowing that JK2 will feature ICARUS2. I must say that on the whole I was very disappointed.

 

While ICARUS does include several nifty features that were sorely lacked in JK, like #includes and camera functions, the ammount of control over the game through scripts is minimal. Scripts can be used only as event handlers within levels - primarily playing cutscenes or modifying NPC actions. Weapons, items and user input, on the other hand, were not handled by the scripts and hence were unmodifiable. The result is that there is very little one can do as far as mods are concerned - the only way to change anything is to add a script to a level. COGScript, on the other hand, was very versatile, and included libraries for controlling all weapon, item, Force power, NPC, player, architecture, cutscene, and even game mode aspects of the game. COG wins hands down on this one.

 

On to syntax and format. ICARUS has very primitive syntax: few operators (functions are used instead - even for declaring variables!), no end of line operator, rem-style comments, and other stuff I can't remember. These really impair script readability, even though they are not all that important. COG, on the other, sported C-style syntax, complete with //comments. Much easier to read. Score another one for COG.

 

Now to the real limitations of ICARUS. I'll start with format issues: no function declaration. No 'for' or 'while' loops. No array support. No switch statements. And general issues: No way to directly control entities other than the one running the script. No way to pass parameters from script to script, and very primitive methods of communicating between scripts. No control over weapons, items, etc. (already mentioned). No control over menus and HUDs. No control over user input and player actions. I can go on and on.

 

To conclude, the ICARUS script system might have been all the developers needed to make Elite Force, but it leaves no room for modifications, modifications that can greatly increase a game's replayability. As an experienced cogger, I can definately say that it is far from enough to make even one playable weapon pack. COG script could've been better, had it included more control over menus HUDs and game physics, but it is definately a much more efficient scripting language than ICARUS. All I can do is hope that ICARUS2 will resemble COG a lot more, and leave an opportunity for people like myself to contribute to the community.

Link to comment
Share on other sites

Originally posted by MikeC

Well, that's dissapointing. I'm having a hard enough time convincing myself to learn a new way of editing and now I find out that it's not even as versatile as the old JK cog script. :(

 

 

well thats ICARUS

raven is smart and will probably make ICARUS2 much more versatile than the original

(if not.... i know where they live......) ;)

 

lol, re learning a scripting system wont be too terribly hard as long its based on c/c++ or basic

 

i hope the weaps and items will be as editable in jk2 as they r in jk

Link to comment
Share on other sites

Raven developed a new scripting language (ICARUS2) for Outcast. No real details have been made available yet. Presumably it is a more advanced version of the original ICARUS.

 

Kenn Hoekstra has said that unsupported 'mod tools' will be released after Outcast is published. He did not specifically say that source code would be released.

Link to comment
Share on other sites

Let me clarify how Raven normally releases their editing tools.

 

There are actually two things they release : The GDK and the multiplayer SDK. They won't be releasing the single player SDK since that would be too much, but to let people create new multiplayer mods they need to release the multiplayer SDK.

Link to comment
Share on other sites

I for one will be a little disappointed that Raven is likely *not* to release an SDK for SP. One of the greatest things about the JK modding community was the huge amount of add-ons you could get. Half-life and Quake 2 also didn't suffer from having a single player SDK released. (For that matter, nor did Deus Ex although the sheer complexity and planning needed to make a decent DX single player level, let alone mod, was, IMO, the reason it never took off.)

 

If Raven don't release an SDK for single player then that will mean the following:

 

* No new weapons (no Blastech pistol, double bladed lightsaber, carbonite gun or anything else)

* No new Force Powers (well actually, that all depends on ICARUS2, but I'm being pessimistic here!)

* No gameplay changes (so no drivable AT-ST <plug>like the one I'm building in Q3:TA </plug>)

* No new enemies with custom AI unless they're based on existing enemies

* No new entities of any sort.

 

It won't stop me playing it and it won't stop me attempting to make levels for it. But I think mod making for JO SP will go the way of EF and DX mod making. And as I don't have a good connection to the net, I don't play MP and have little interest in making mods for it.

 

Anyone (with more time on their hands than me) fancy starting a petition to Raven? You can put my name down for a start!

 

Dragon

 

(P.S. I really hope I'm wrong, but I ain't getting my hopes up!)

Link to comment
Share on other sites

Now, unfortunately, it is likely that source code of any kind will not be released. But we'll have to wait and see what happens.

 

With EF, we pushed with Raven to get Activision and Paramount to allow the release of quite of a lot of stuff. Maybe the same could be done later on. *shrug*

Link to comment
Share on other sites

Someone mentioned somewhere on this forum that SOF2's ICARUS2 can be used to modify weapons, items, and a whole other list of things. Hopefully this is the same version of ICARUS2 that is used in JO. If that's the case, and if ICARUS2 is anywhere near as powerful as CogScript, then an SDK really won't matter as far as mods go.

Link to comment
Share on other sites

If ICARUS2 is based on ICARUS then it will be their own bespoke scripting language. The SDK, if any, is likely to be in C, as are the Q3A, RTCW and EF SDKs. (How many acronyms can I get into one sentence?)

 

I was having a look at the EF ICARUS setup last night and noticed that there are a load of C header files in the src directory (or somewhere!). Anyone have any idea what these are and what they do?

 

I hope ICARUS2 allows you to change more than ICARUS did in EF. An SDK would be nice because you could have more control over what you can change (and a greater variety of things you can change!) and be able to change the way some of the things work. (Or am I just dreaming?)

 

Who knows? We'll have to wait and see.

Link to comment
Share on other sites

ICARUS is too simple, as I stated at the beginning of the topic. It includes primitive syntax and constructs, and is useful only for making levels - you can control many dynamics of a level through the scripts; but for modding it is useless since it has no connection to the inventory/weapon systems.

 

Sure an SDK would be the ultimate coolness. But LucasArts I believe have never released an SDK and I doubt they will allow Raven to.

Link to comment
Share on other sites

I don't know if you can say that just because Lucasarts haven't done, doesn't mean they won't! They're learning a lot from fielding out the development to other people (ie. JO and Galactic Battlegrounds!) GB came with scenario editor and they're encouraging that. It's not quite the same thing but it's a step in the right direction.

 

My feeling on this is that they wouldn't use the Q3 engine for JO if they didn't accept the fact that the games community thrives on editing and modding. And they never shut down the JK modding community so they can't exactly say they don't approve entirely (just the usual EULA stuff about LA property etc.) Raven have already stated that JO will be editable with any Radiant editor, models will be editable with GMax and Milkshape (with appropriate filters) and that ICARUS2 will be considerably more customisable (with the implication that you can edit weapons, NPCs etc from digl's linked .plan), but the question remains how much more customisable is ICARUS2 than ICARUS (will it be more complex - the 3GL of scripting languages?) and will there be an SDK.

 

I think that it's highly likely that they will release an SDK for the MP side so that people can create JO Fortress, JO Instagib, JO Counterstrike and other highly original and creative mods. They'd be foolish not to.

 

Then again, what was Force Commander all about?

Link to comment
Share on other sites

ICARUS was never meant to be a QuakeC/COG type language, we decided to let the programmers program the weapons and AI and make ICARUS the tool for just scripting special case behaviors and events the AI and world objects shouldn't be hardwired to do. So, no, it's not nearly as powerful as the pseudo-C style COG and QuakeC.

 

So you can make new maps with all new scripted events, cinematics, storylines, effects, puzzles, etc and sounds and graphics and models, etc, etc, but you are probably not going to be making all new weapon functionality (though you can change the graphics and sounds), new AI routines (though you can do a lot with scripting) or changing how physics work or the HUD or things like that. However, you can, by both scripting with ICARUS and modifying a lot of the external data files, make an impressive amount of changes to the game, it's just not as straightforward (but confusing to non-programmers) as QuakeC/COG...

 

However, MP is a different story, as it doesn't use ICARUS, it uses Id's VM's and the code will (I'm presuming) be released for that and that is in C and you can do quite a bit with that.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...