Ziemanskye on 2/5/2009 at 20:33
Tony - the new ibt files get generated and stored in the folder with your saved games, and need to be copied manually into the maps folder.
If it's taking 15 minutes and only coming up with 18kb, which I'd guess to be a couple of *.ini files of changes, I would guess that the big changes, ie the new ibt files, aren't in the location you think they are. That it takes so long doesn't surprise me: the trigger scripts are all tiny (like <1k) files, and there's thousands of them, so even just copying them (or forgetting to exclude them from your virus-scanner, being how I first consciously noticed :p) can take quite a while. You also haven't messed with them, of if you have, then you haven't messed with the easy and vast majority of them, but Patchwise will still have to check them all.
New Horizon on 2/5/2009 at 21:06
As Ziemanskye says, you have to place your 'new' ibt files into the 'patched' maps directory. Be patient, be thorough and think your way through the situation before giving up. One step at a time.
Tony Ayalew on 3/5/2009 at 07:57
Quote Posted by New Horizon
As Ziemanskye says, you have to place your 'new' ibt files into the 'patched' maps directory. Be patient, be thorough and think your way through the situation before giving up. One step at a time.
No, no, no>>> I wasn't talking about the IBT Files. I have already successfully created about 34 IBt Files.
I was talking about PATCHWISE. Patchwise didn't work well: It took 15 mniutes (propably even more) to make an executable program, but the .exe file is just 18kb. That can't be right. I used the program, and it didn't work. Not at all. Now, I have a new idea: I'm sick of my own MOD, and that says enough. I will send my changed files (totally about 155MB) to some person on earth, and let him/her figure it (the heavens) out.
-T.Ayalew:mad:
New Horizon on 3/5/2009 at 13:51
Tony, send me a PM. I'll tell you how to send your mod to the ftp space I have access to.
I don't think there is any problem with patchwise, it's completely normal for it to take a long time. It has to compare EVERY FILE for differences...that's how it works. There are many files, so it doesn't matter if you only changed a few files, this will take a long time.
Out of curiosity. Once you remove John P's textures, what other changes did you make? A lot of custom textures?
If it's only changes to the gamesys or other minor text changes with scripts, it's possible that the file would not be very big.
Also, we know that you created the IBT files and all the rest, but did you move them into the maps folder of your 'patched' installation?
Quote Posted by Tony Ayalew
No, no, no>>> I wasn't talking about the IBT Files. I have already successfully created about 34 IBt Files.
I was talking about PATCHWISE. Patchwise didn't work well: It took 15 mniutes (propably even more) to make an executable program, but the .exe file is just 18kb. That can't be right. I used the program, and it didn't work. Not at all. Now, I have a new idea: I'm sick of my own MOD, and that says enough. I will send my changed files (totally about 155MB) to some person on earth, and let him/her figure it (the heavens) out.
-T.Ayalew:mad:
Tony Ayalew on 4/5/2009 at 08:53
OK
Tony Ayalew on 4/5/2009 at 08:53
Hello, I didn't make this, but it looks interesting:
"
Tutorial: Rope Arrows - Second Edition
--------------------------------------------------------------------------------
Rope Arrow Tutorial: Second Edition
This will keep updating depending on discoveries and bug-fixes.
First of all, thanks to Rantanko for the solid foundation, New Horizon for simplifying rope arrow creation (undeletion), str8r8 for the rope skeletal mesh, and everyone else involved with this project.
A new video:
T3RopeArrow.wmv
Creating the Rope Arrow (Rantanko)
Open the Actor Class Browser and create a new archetype under WorldObj -> InventoryObject -> PowerUp -> Arrow, and call it RopeArrow. You probably could create it under BroadheadArrow, but I didn't in case it inherited any properties I didn't want from the Broadhead. Add the following properties to your RopeArrow:
Contact -> ContactResponse: eCR_Stick_On_Material_Or_Destroy
Inventory -> HelpText: < string=T_InventoryHelpTextRopeArrow >
Inventory -> InvName: < string=t_RopeArrow >
For some reason this forum won't let me write these bits properly - there are really no spaces in the HelpText or InvName properties.
Inventory -> MaxInventoryStack: 5
You can set this property to whatever you want, but I thought a low value would be best because these things could be pretty useful - and valuable.
Render -> FXMaterial: (Material=”MemHiLite”,Mode=FXMaterialMode_None)
Render -> ObjectMesh: INVarrowSHAFT1A1 (Default)
This can be found in Static Meshes -> INV_WEAPON_UI -> GarrettWeapons
Scripts -> TriggerScripts: RopeArrowSound, ArrowPhysicsChange, HilightArrowOff, HilightArrowOn
The next few are all under Stimulus
Stimulus -> ContactXfrInfo -> DeleteOnXfr: True
Inactive: True
Stim -> [0] -> Amount -> Amount: 1.00
Stimulus: StimulusType_DX2Bullet
TotalTime: 0.00
This allows the RopeArrow to be used like a broadhead as in T1/2, but does less damage. You could leave it out if you want.
[1] -> Amount -> Amount: 1500.00
Stimulus: StimulusType_Impulse
TotalTime: 0.00
Now right click the RopeArrow archetype and click Placeable/Unplaceable.
We now have an arrow, but it has no arrowhead, and doesn't yet spawn ropes. It also has no help text (more on this later).
Creating the Arrowhead
A static mesh for the rope arrow head already exists, but we'll have to create a new actor so we can link it to the arrow. In the Actor Class Browser create a new archetype under MetaData -> UI and call it RopeArrowhead. Give your RopeArrowhead these properties:
Inventory -> HelpText: < string=t_InventoryHelpTextRopeArrow >
Inventory -> InvName: < string=t_RopeArrow >
Don't know why these are needed here, but all other arrows have these on both the arrow and the arrowhead. Again, there are no spaces in those properties, but the forum won't let me post them like that.
Render -> ObjectMesh: INVarrowheadROPE (Default)
Render -> RenderType -> DrawType: DT_StaticMesh
Render -> RenderType -> Style: STY_Normal
Go back to the RopeArrow archetype you made earlier and open its Links (right click, show links). Create a RigidAttachment link FROM RopeArrow TO RopeArrowhead. Click Edit Selected Link and set up the following properties: (I can't remember which are set like this by default, so I'll list them all)
Attachment -> m_attachmentBone: hp_arrowshaft
Attachment -> m_parentBone: HP_arrowhead
Hidden -> bDontPropogateHiddenFlagToChild: False
Highlight -> bPropagatesHighlight: True
Lifetime -> bDeleteChildOnDeath: True
Link -> m_GroupName: None
Link -> m_name:
Spawn -> bDontSpawn: False
___________________________
Add a script called RopeArrowSpawn1 to RopeArrow (Rantanko, ascottk):
CONDITIONS:
When I come to rest for the first time
ACTIONS:
Spawn object of type at end of [Triggerscript] at hard point [HP_Stick] on linked object(s) [MYSELF]
Delay [1.00] GAME seconds
Destroy linked object(s) [MYSELF] *This is necessary for "arrow" retrieval* (frob the rope)
Reset script conditions and actions
___________________________
The Dummy Spawn
New archetype (I called RopeArrowDummy) underneath InventoryObject>PowerUp>Arrow.
Add ObjectMesh under Render and use INVarrowROPE.
Add a script called RopeArrowDummyDelete to this archetype
___________________________
CONDITIONS:
On script startup
ACTIONS:
Destroy linked object(s) [MYSELF]
Reset script conditions and actions
___________________________
That's it for that one
The Rope Arrow "Ladder(s)"
First download the rope skeletal mesh and unzip it into the CONTENT\SkeletalMeshes folder. (UPDATED 9/23/05 with new *.ski file with appropriate offsets)
NEW (Skeletal and Static meshes with textures) here
Creating the Spawning Rope
Add a new archetype under WorldObjects>Environmental>Ladder called RopeArrowSpawn.
Under Render add SkeletalTag then type in GARrope.
Under Actor it should be: bNotMoveablePhysics/Render=False
Sound>SoundSpawn: hit_arrowrope
Add a script called RopeArrowAnim:
___________________________
CONDITIONS:
On script startup
ACTIONS:
Delay [0.50] GAME seconds
Start my animation [GARrope20] with rate [1.00]
Delay [2.00] GAME seconds
Destroy linked object(s) [MYSELF]
Reset script conditions and actions
___________________________
Creating the Climbing Rope (Rantanko, ascottk)
The rope is the most problematic part of this arrow. Rope actors do exist, but none of them work, so we're going to have to make our own. Open the Static Mesh Browser, select SETDRESSING -> Ladders -> GENrope16 and place one in your map (doesn't matter where, it'll be deleted later anyway). Now open the texture browser and Import All Matlibs. Then go into T3_GEN and select the texture GEN_ROPE. Find your rope in the 3D window and ALT-Leftclick it - this will apply the rope texture. You then need to right-click the rope, expand the Static Mesh menu and click Add New Skin (or something like that - I can't remember the exact name - could someone post it in here). Call your new skin something obvious, like ‘Rope'. When you try to save your map, you will get a message about unpublished skins - you can get rid of this by clicking Tools -> Auto-Publish meshes in this Map, then doing a few Build Alls.
Now open the Actor Class Browser again. Create a new archetype under WorldObj -> Environmental -> Ladder and call it RopeArrowLadder. Give the following properties to the RopeArrowLadder:
Actor -> bNotMoveablePhysics: True
Actor -> bNotMoveableRender: True
Frob -> FrobBias: 100.00
Frob -> IsFrobbable: True
Highlight -> HighlightDist: 256
These frob settings will be needed later.
Render -> ObjectMesh: GENrope16 (Rope)
This is why we made the new skin earlier.
Linking Things Together (Rantanko, ascottk)
Now create a HUDRender link FROM RopeArrow TO RopeArrowhead.
Another link: a TriggerScript link FROM RopeArrow TO RopeArrowDummy.
A third link: a DeathSpawn link from RopeArrowDummy to RopeArrowSpawn
alter the link's properties:
Hardpoint>m_parentBone>RopeAttach
Spawn>m_bTakeParentRotation=False
Spawn>m_numberToSpawn=1
A fourth link: a DeathSpawn link from RopeArrowSpawn to RopeArrowLadder
properties:
HardPoint>m_parentBone=Bone01
Spawn>m_bTakeParentRotation=False
Spawn>m_numberToSpawn=1
Trigger Script
That's right - there's just one new Trigger script involved. Open the Trigger Script Manager and create a new script (for the sake of convenience, I put mine in the Weapons group) and call it RopeArrow1.
___________________________
The Conditions are:
When I am frobbed by player
The Actions are:
Add [1] [RopeArrow] objects to the player inventory
Play sound schema [pu_power]
Destroy linked object(s) [MYSELF]
Reset script conditions and actions
___________________________
Finally go back to your RopeArrowLadder in the Actor Class Browser and give it the property Scripts -> TriggerScripts: RopeArrow1.
And that's it - the rope arrow is now ready for use! Just place the RopeArrow archetype - the other parts will follow (you can also put it in the default inventory if you want).
Setting up the Help Text
This part is completely optional. Each type of arrow in T3 displayed an on-screen help message the first time you picked one up. This is how to do it.
Open the file CONTENT\T3\Books\English\String_Tags\Inventory.sch and create a new entry, which should look like this:
TextEntry
T_InventoryHelpTextRopeArrow
lang_english 2005-03-31 11:49:50 "When a rope arrow is fired at a wooden surface, a rope will extend straight downward from the point of impact. These ropes can be climbed just like ladders."
lang_french 2005-03-31 11:49:50 "When a rope arrow is fired at a wooden surface, a rope will extend straight downward from the point of impact. These ropes can be climbed just like ladders."
lang_german 2005-03-31 11:49:50 "When a rope arrow is fired at a wooden surface, a rope will extend straight downward from the point of impact. These ropes can be climbed just like ladders."
lang_italian 2005-03-31 11:49:50 "When a rope arrow is fired at a wooden surface, a rope will extend straight downward from the point of impact. These ropes can be climbed just like ladders."
You can make the text in the quotes say whatever you want, but the entry must be called ‘T_InventoryHelpTextRopeArrow'.
Now go to your CONTENT\T3\Books\English folder and make a copy of the file ‘InvHelp_FireArrow.sch' (any file with InvHelp in front of it will work). Change the file name to ‘InvHelp_RopeArrow.sch'. Open the file and change all the instances of ‘Fire' to ‘Rope'. Save this, and open T3Ed.
In T3Ed click View -> Global Variables -> Flags. In the window that appears, type ‘HelpTextRopeArrowDone' in the white box at the top, and click OK. It is this which will let the game know when to display the help text. Now open the Trigger Script Manager and create a new script (for the sake of convenience I put mine in the HelpPopUps group). Call it ‘HelpPopUpRopeArrow'.
___________________________
The Conditions are:
When I am frobbed by player
Query if flag [HelpTextRopeArrowDone] is set to [FALSE]
The Actions are:
Set flag [HelpTextRopeArrowDone] to [TRUE] expires on map change [FALSE] expires on mission [20]
Popup a window with text from the file [InvHelp_RopeArrow.txt]
___________________________
Open the Actor Class Browser, and give your RopeArrow the property Scripts -> Trigger Scripts: HelpPopUpRopeArrow.
Now the help text will be displayed the first time you pick up a Rope Arrow, but will not be displayed again, just like all the other arrows. (The same method can be used to give help text to any other custom arrows, or any object.)
(If your arrow doesn't show the name 'Rope Arrow' when you select it in inventory, you will need to create a new entry in Inventory.sch called T_RopeArrow - it should be there already, presumably from before the developers stopped doing rope arrows).
Known problems (Rantanko):
There are a few bugs in this arrow.
Ladder Animations - because the rope animations are pretty bad, this uses standard ladder animations. This of course means that you can only climb two sides of the rope (it seems to be the ones facing east and west), and if you are very unlucky Garrett will climb through a solid wall or roof when trying to climb off the top of the rope.
Retrieving the Arrow - one of the useful things about the T1/2 rope arrows was that they could be reused by frobbing the arrow, you have to frob the rope instead. You should try to make sure you're not on the rope when you do this, because Garrett will do his *climbing off the top of a ladder* thing when the rope vanishes - often making him climb through the roof.
Also the skeletal mesh disappears at certain angles & the GARrope static mesh is hard to start climbing with. But once you start climbing it's great.
:p
"
New Horizon on 4/5/2009 at 16:14
Quote Posted by Tony Ayalew
Tony, send me a PM. I'll tell you how to send your mod to the ftp space I have access to.:p OK, but I need to let the patch work first!
Why do you need the patch to work? I'm asking you to upload ALL your changed files to an ftp so 'I' or 'someone else' can run the patching process.
Tony Ayalew on 5/5/2009 at 07:34
Nothing to say.
Tony Ayalew on 8/5/2009 at 07:32
I'm still bussy with my exams. Please, wish me luck....:angel:
Tony Ayalew on 10/5/2009 at 08:49
Today and tomorrow are special days:
Today is Mothersday!:angel:
Tomorrow Thief 4 will be announced!:joke:
:D