Skip to main content
GameDev.net gamedev.net
🔒 Locked

Farcry modding

Started by Anarkist Jun 8, 2004 at 3:02 AM 45 replies 16.6k views
Original Post
Anarkist
Anarkist
I haven''t heard much regarding Farcry mods on this forum, and I find it strange as Lua seems to be a popular programming language around here and Farcry uses it extensively. Why exactly is that? I hope to see more people around here making use of the Cryengine and Lua for mod development.
Kylotan
Kylotan
Well, there aren''t exactly many mod posts, and people tend to mod slightly older games that more people are familiar with.
Pxtl
Pxtl
Plus, learning a new platform is _hard_ - which is why the sequels get all the attention - their platforms are easy. Only if a games is an astronomical success do they try and mod it without experience with the devkit.... of course, for some goddamn reason, they totally ignore whether or not it was meant to be modded. I mean people actually try to mod GTA3 by exe hacks. Plus there''s that Desert Combat thing, another mod that was made mainly just by brute hacking.

Funny how the actual quality of the toolkit just doesn''t seem to enter into the equation when it comes to the uber-hardcore TC modders.
-- Single player is masturbation.
FDan
FDan
well Desert Combat was supported by Dice (afaik ... correct me if i''m wrong) so this was no brute hacking. Check out www.pandora-forces.de .. its a farcry mod I''m working on at the moment...
aarbro
aarbro
Perhaps not much people know about FC here? I just stumbled across this site and think this is a good place to find more about Lua. Great to see a community dedicated to the scripting languages.
Raduprv
Raduprv
FC is a new engine, therfore you guys have to wait for a while until there will be dedicated moding communities around it.
Offtopic: Lua is not the only scripting language, you know? :)
fagiano
fagiano
Quote:
Original post by aarbro
Perhaps not much people know about FC here? I just stumbled across this site and think this is a good place to find more about Lua. Great to see a community dedicated to the scripting languages.


Well, I designed the FC script/modding system :) . So I guess there are people that know about FC here.
BTW I no longer work for crytek but if you got some questions I'm glad to help.
-----------------------------The programming language Squirrelhttp://www.squirrel-lang.org
bkt
bkt
FarCry is totally script access, no engine/C++? The last time I checked people were still awaiting on the SDK for FC, has it come around yet?

I was considering FC because HL2 is taking so god damn long to come out, I decided to bring my game to HL2 because I can start programming on it now (the original SDK is suppose 95 percent 'able to be ported').
-John "bKT" Bellone [homepage] [[email=j.bellone@flipsidesoftware.com]email[/email]]
TangentZ
TangentZ
Quote:
Original post by fagiano
Well, I designed the FC script/modding system :) . So I guess there are people that know about FC here.
BTW I no longer work for crytek but if you got some questions I'm glad to help.


[wow] I'm very impressed! [inlove]

I have some experience in Far Cry modding with Lua. I found
it very easy to use and very powerful.
神はサイコロを振らない!
aarbro
aarbro
Quote:
Original post by fagiano
Well, I designed the FC script/modding system :) . So I guess there are people that know about FC here.
BTW I no longer work for crytek but if you got some questions I'm glad to help.


Hi fagiano, looks like I'll visit here more often:) I can only say I'm impressed by the scripting possibilities in FC. Must have taken some time to design that system. Still very easy to create new functionality in and debug.

Actually I have one question about the state machine which I'm working with in an entity. I understand a state is a table of functions that replace the "global" events in the entity. When in a state, the events with the same name inside that state are used instead of the "global" ones. Is that right?

I know how to start the states but how do I stop using them and return to the ordinary events in the entity?
fagiano
fagiano
Quote:
Original post by aarbro

Actually I have one question about the state machine which I'm working with in an entity. I understand a state is a table of functions that replace the "global" events in the entity. When in a state, the events with the same name inside that state are used instead of the "global" ones. Is that right?


Yes you are right. Usually you also have different handlers between client and server.


EntityName.Server.Idle = {
OnWhatever = function()
end
}

EntityName.Client.Idle = {
OnWhatever = function()
end
}


that is the common case for multiplayer entities.

Quote:

I know how to start the states but how do I stop using them and return to the ordinary events in the entity?


You can't. if an entity has states, you are always in one state. Usually I create a state 'Idle' that works as normal beahaviour.

ciao
Alberto
-----------------------------The programming language Squirrelhttp://www.squirrel-lang.org
fagiano
fagiano
Quote:
Original post by bkt
FarCry is totally script access, no engine/C++? The last time I checked people were still awaiting on the SDK for FC, has it come around yet?

I was considering FC because HL2 is taking so god damn long to come out, I decided to bring my game to HL2 because I can start programming on it now (the original SDK is suppose 95 percent 'able to be ported').


I'm not sure what crytek is going to ship with the SDK, I no longer work there. In any case in FC scripts are enough for 90% of the mods you can come out with. The C++ code doesn't have much logic in it. Personally I wouldn't bother with C++.

ciao
Alberto
-----------------------------The programming language Squirrelhttp://www.squirrel-lang.org
Anarkist
Anarkist
Hey guys, thanks for replying to my post. Sorry I haven't responded until now, but I've been busy lately.

I guess it makes sense that people don't mod games until they become more familiar with them and FC hasn't been available for that long. Its just that I see that there are many people here use Lua for scripting and thought it strange that there weren't more post regarding Farcry modding as it uses Lua extensively.

As for Desert Combat, the modders had too resort to brute force hacking to mod it at first (except unlike FC it had model exporters), until DICE released the Battlecraft map editor, which was already being developed by a guy from the modding community and was actually delayed until DICE had released the first expansion pack. AFAIK the closet thing to support they got was probably an early release of the tools.

Hey TangentZ are you working on a mod at the moment? If so which one. Aarbro and I are working on something at the moment and we need all the help we can get.
aarbro
aarbro
Thanks, much appreciated fagiano,

I'll use the state machine in a different manner now. I haven't made my entities mp compliant yet but I'll look into that next. First sp that bring me to two new questions:

1. The save and load events: Are anything loaded/saved by default for an entity, such as property values? Or do I have to stream each variable "manually"?

2. Any idea how to capture a key that is pressed and held? I've found a function that captures a single key pressed, Input:GetXKeyPressedName(). However if I want to use it as a steering control for a vehicle it doesn't work. I need to know when the key is down and later released.
TangentZ
TangentZ
Quote:
Original post by Anarkist
Hey TangentZ are you working on a mod at the moment? If so which one.


Shhh... It's all hush-hush, for now. [wink]
神はサイコロを振らない!
fagiano
fagiano
Sorry I reply only now because in the last days I realocated to another country for a new job. I've been a bit busy :)

Quote:
Original post by aarbro
1. The save and load events: Are anything loaded/saved by default for an entity, such as property values? Or do I have to stream each variable "manually"?


Everything that is in the 'Properties' table gets automagically serialized, everything else you want to save has to be explicitly serialized.

Quote:
Original post by aarbro
2. Any idea how to capture a key that is pressed and held? I've found a function that captures a single key pressed put:GetXKeyPressedName(). However if I want to use it as a steering control for a vehicle it doesn't work. I need to know when the key is down and later released.


I've got to take a look to a vehicle script to refresh my memory, I do not remeber very well this part. I any case, if you tell me exactly what you are trining to do I can find a more elegant solution rather than polling GetXKeyPressedName().

ciao
-----------------------------The programming language Squirrelhttp://www.squirrel-lang.org
aarbro
aarbro
No problem. I've been rather late in replies myself here.

Actually what I'm looking for is a way to create a powered hangglider, like an ordinary aircraft. There was a q about this by NOVA_Maimer at the UBI forum but no solution was found. The idea is to use this combination:

Mouse --roll and pitch
Forward/w --power up
Backward/s --power down
Left/right/a/d --yaw left and right

For instance take the w/s keys, in the hangglider those keys are used for pitch there. I want to make them control the power instead, like engine rpm. But it's not really important what keys are used. Just how to make a variable change when a key is held down. When the key is held down the rpm should increase constantly.

In another project I've been polling GetXKeyPressedName for a trigger entity with success. It's a variant of the ProximityTrigger that can trap any key, not just the USE key. The idea is to make it possible for the player to enter a numerical code on the num keys for instance. It's using polling but only when the player is inside a small area so I don't think it'll be too costly. Still it's crude, if there is a way to get a system event for keys, the better. However, this method is not usable for the aircraft as only a single key pressed is recognized. When held down GetXKeyPressedName replies with nil.

Thanks again for taking the time to helping out and good luck at your new location.
666penguin666
666penguin666
I actually believe the desert combat team MADE the mod tools, with help from Dice (I heard something about this awhile ago).

Anyway, I bought Farcry awhile ago and I am wondering how to mod it.
I should probally just wait till the SDK comes out because that should be ALOT easier.
Suli
Suli
Hello I was wondering which Lua libraries where included?

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.