DarkDragon on 23/7/2008 at 01:57
Hi. I have been doing some FM work lately, building a big new one and revisiting my 1st FM to make it better thanks to things ive learnt from my new FM. Unfortunately, 2 odd problems are stopping me from making any progress.
Problem Number 1) I developed a new Key system for my Fan Missions im making. The Key goes in the inventory and can be used to unlock and relock doors. I got the idea from here but made mine a bit better: (
http://www.ttlg.com/wiki/index.php?title=Making_Keys_Usable_from_the_Inventory#Making_a_key_open_more_than_one_door)
However, this only seems to work in my T3Editor installation. Whenever, I try and test out the FM on my T3Game installation, The Keys will apear in the inventory fine but any attempts to use them gives no result.
I got this code from the Debug Log file:
Code:
WARNING: Actor LRMKey2__23 does not have static mesh flags set for its collision hull! Defaulting to Artist Generated ConvexHull![ 254685] (.\LevelConverter.cpp : 311)
Spawned 'LRMKey2__23' (0x761f1d40) in 'LordRavensMansion' [ 254687] (.\UnLevAct.cpp : 261)
Destroying Actor: LRMKey2__23 (0x761f1d40) [ 254703] (.\UnActor.cpp : 474)
WARNING: Attempt to remove an instance of a trigger script definition (TS_4274) that does not exist! [ 254704] (.\TriggerSys\TriggerSystem.cpp : 926)
WARNING: UObject::SetProperty called on object P_17__23 of class P_17 for property StaticMesh when object was destroyed.[ 254705] (.\UnObj.cpp : 2514)
WARNING: Actor LRMKey2__24 does not have static mesh flags set for its collision hull! Defaulting to Artist Generated ConvexHull![ 255405] (.\LevelConverter.cpp : 311)
Spawned 'LRMKey2__24' (0x7aaa0300) in 'LordRavensMansion'
It says that Script 4274 doesnt exist when I know I have it waiting for the mission to find it (in CONTENT/T3/TriggerScript/Defs/)
Have I not packed everything into my FM ZIP file? or is this another of my schemes foiled my own editor?
Problem Number 2) Saving and Loading! But this is a bit different then normal.
I can save and load my FM from Easy, Hard and Expert difficulties with no problems but when trying to save on Normal Difficulty, the game crashes. I havent really done anything different for Normal Difficulty to the other difficulty settings so why just Normal?
Ive been trying to solve these problems for days with no visible results, tried everything except asking here.
If anyone can lend a hand I would be extremely grateful.
Ill update this post when I solve any of the problems. Thank you.
Judith on 23/7/2008 at 09:13
Hello :)
It's hard to say right now what's wrong with the script, I guess you remembered to compile the scripts last time you made your changes (pressing ok instead of cancel)? Anyway, you don't need to include scripts folder in your FM package, they're "baked" into the map (.ibt) file. The same goes for textures (except those in utx packages, used for emitters) and static meshes.
Ziemanskye on 23/7/2008 at 18:26
If I recall correctly, you need the other ibts as well - the Kernal stuff, if you're doing custom scripts on custom archetypes
DarkDragon on 24/7/2008 at 01:43
Thanks Judith, I didn't expect something like that to actually work but it did! Now the keys work fully in the mission.
Now I just have to work our why it hates normal difficulty so much and likes Easy, Hard and Expert in terms of saving and loading.
Beleg Cúthalion on 24/7/2008 at 06:01
Can you please tell us again what's the difference between the "belt key" system (which should be described in the wiki AFAIK) and your "better" one?
DarkDragon on 24/7/2008 at 11:23
Basically it works like Thief 2's system. You find keys around the level and instead of just being picked up and used automatically, they are instead moved to the inventory is actual usable items (like potions or flashbombs), if a door is locked, you find the key in your inventory and use it in front of the door like a regular item. If the key is supposed to go in that door then the triggerscripts pick up on that and unlocks the door.
The Scripts go on the key and the door. The script "sends out" a message when the key is used then resets, the door is the receiver of that message and unlocks itself.
If the door is closed but unlocked and the player uses the key on the door again, it locks the door behind him.
Hopefully it'll add something to the game play. If it doesn't or I get too many complaints about it, ill just get rid of it.
How I made it 'better' then the description on the Wiki is I added a check to the script to see if the door was open, the version on the wiki didnt say that the door would also lock whilst it was open (which would break immersion), I found a condition in the TriggerScript maker that was something along the lines of 'Check Doorstate is Doorstate_Closed' this means the script will be only be accepted if the door is shut.
massimilianogoi on 24/7/2008 at 12:00
I remember str8g8 has done something like this in his beautifult mission "The Bridge" to open the main entrances, try to ask him, he will be cerainly helpful.
Beleg Cúthalion on 24/7/2008 at 13:37
@Dark Dragon: So with an open door it would do nothing or simply open it? Ah, maybe I'm confusing open with unlocked, I'll sleep on it...:bored:
DarkDragon on 24/7/2008 at 17:33
The game would lock the door whilst it was open.. hence whilst it was open.. it was acting like it was locked.. you couldn't shut it and would have to either lockpick it or unlock it so you could shut the door. I added this Door Check to make sure that the door can not be locked whilst it was open. Sorry thats the best I can do to describe it :P
Beleg Cúthalion on 24/7/2008 at 18:51
I think I got it now. Maybe you could add this to the Wiki (or ask someone, you need an account, don't you?). :)