Happy Patches?
#1
Posted 19 December 2004 - 01:22 PM
- The transitioned former modder once known as MTS.
#2
Posted 19 December 2004 - 02:06 PM
COPY_EXISTING ~AERIE.BCS~ ~override/AERIE.BCS~ APPLY_BCS_PATCH_OR_COPY ~ease/romhap/rom/AERIE_4.bcs.patch~ ~ease/romhap/rom/AERIE_4.bcs~
where aerie_4.bcs.patch is... erk... some hideous string of madness! I'm not even going to quote it here. Was this what you were asking about? Anyway, there is likely an easier way of doing the same, now that WeiDU has been updated so many times .
Edited by Shed, 19 December 2004 - 02:06 PM.
Yikari, monk NPC
Shed's Mods - Three time TeamBG Contest winner!
The Jerry Zinger Show
ShedPlant.net
#3
Posted 19 December 2004 - 02:47 PM
Hmm... What about a script!where aerie_4.bcs.patch is... erk... some hideous string of madness!
You know, uncompiled .bcs? Or compiled .baf?
Khadion NPC mod - Team leader, head designer
Hubelpot NPC mod - Team leader, coder
NPC Damage - Coder
PC Soundsets - Coder, voice actor
Brythe NPC mod - Designer
DragonLance TC - Glory of Istar - Designer
The NPC Interaction Expansion Project - Writer for Cernd, Sarevok
The Jerry Zinger Show - Producer
Iron Modder 5 - Winner
#4
Posted 19 December 2004 - 02:51 PM
Hmm... What about a script!where aerie_4.bcs.patch is... erk... some hideous string of madness!
You know, uncompiled .bcs? Or compiled .baf?
Oh, you asked for this one.
@@ -25,40 +25,112 @@ 0 0 0 0 0 0 0 0 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB 1 0 0 0 0"GLOBALAerieMatch" "" AC AC 36OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB 0 0 0 0 0"" "" AC RE RS CR CR CO TR +16451 0 0 0 0 "" "" OB +0 0 0 0 0 0 0 1 0 0 0 0 ""OB +TR +TR +16437 36 0 0 0 "LOCALSLoveTalk" "" OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +TR +TR +16399 1 1 0 0 "GLOBALAerieRomanceActive" "" OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +TR +CO +RS +RE +100AC +30OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +1 0 0 0 0"GLOBALAerieRomanceActive" "" AC +AC +36OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +0 0 0 0 0"" "" AC +RE +RS +CR +CR +CO +TR +16451 0 0 0 0 "" "" OB +0 0 0 0 0 0 0 1 0 0 0 0 ""OB +TR +TR +16436 35 0 0 0 "LOCALSLoveTalk" "" OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +TR +TR +16399 2 1 0 0 "GLOBALAerieRomanceActive" "" OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +TR +CO +RS +RE +100AC +30OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +2 0 0 0 0"GLOBALAerieRomanceActive" "" AC +AC +36OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +OB +0 0 0 0 0 0 0 0 0 0 0 0 ""OB +0 0 0 0 0"" "" AC +RE +RS +CR +CR +CO +TR 16399 0 0 0 0 "LOCALSAerieHasProperPortrait" "" OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB TR TR 16436 0 0 0 0 "GLOBALAerieTransform" "" OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB TR CO RS RE 100AC 160OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 1 0 0 0 0 ""OB OB 0 0 0 0 0 0 0 0 0 0 0 0 ""OB 3745 0 0 0 0"" "" AC AC 324OB
Yikari, monk NPC
Shed's Mods - Three time TeamBG Contest winner!
The Jerry Zinger Show
ShedPlant.net
#5
Posted 19 December 2004 - 03:01 PM
No, I didn't ask for it. I merely told you what it was, since you apperantly didn't know.Oh, you asked for this one.
Khadion NPC mod - Team leader, head designer
Hubelpot NPC mod - Team leader, coder
NPC Damage - Coder
PC Soundsets - Coder, voice actor
Brythe NPC mod - Designer
DragonLance TC - Glory of Istar - Designer
The NPC Interaction Expansion Project - Writer for Cernd, Sarevok
The Jerry Zinger Show - Producer
Iron Modder 5 - Winner
#6
Posted 19 December 2004 - 03:05 PM
Yikari, monk NPC
Shed's Mods - Three time TeamBG Contest winner!
The Jerry Zinger Show
ShedPlant.net
#7
Posted 19 December 2004 - 03:19 PM
"MTS, you don't have the patience to sit down and learn how to do this."
- The transitioned former modder once known as MTS.
#8
Posted 19 December 2004 - 03:25 PM
APPLY_BCS_PATCH: Applies patchFile to the current file. See --bcmp-from and similar command-line arguments for constructing these patches.
Comparison Options:
--cmp-from X emit WRITE_BYTEs to turn this file ...
--cmp-to X ... into this one
--dcmp-from X emit REPLACEs to turn this DLG file ...
--dcmp-to X ... into this one
--tcmp-from X compare this TRA file (or directory of TRA files)...
--tcmp-to X ... with this one (or this directory)
--tlkcmp-from X emit STRING_SETs to convert this TLK file ...
--tlkcmp-to X ... into this one
Yikari, monk NPC
Shed's Mods - Three time TeamBG Contest winner!
The Jerry Zinger Show
ShedPlant.net
#9
Posted 19 December 2004 - 03:27 PM
Different NPC romances probably use different variables, but that's the basics.
#10
Posted 20 December 2004 - 11:03 AM
The quick answer is that happy patches remove or alter the sections of NPC scripts that disable romances. The standard global that determines the status of a romance is "NPCRomanceActive". Normally, a value of 1 means courting, 2 means exclusive relationship, and 3 means you called her fat. The scripts check for a value of 2, and turn all other romance variables to 3.
Different NPC romances probably use different variables, but that's the basics.
All of the Bioware romances use that system, and with the exception of Tashia, there's not really Happy Cracks for mod NPCs.
#11
Posted 20 December 2004 - 11:42 AM
the first is the NPCs-not-leaving-due-to-reputation-gain/loss, which is a simple case of editing the Happy.2da file. you can do this with any normal text editor, and all it involves is realising the logic of the table (which is all a 2da file is): ie, negative numbers=unhappy; zeroes=no dramas; positive numbers=boastfully happy.
the second is the multiple-simultaneous-romance question, qhich involves removing from the various NPC scripts those blocks that govern NPC actions if you have a successful romance going with someone else. this is slightly harder to learn, cos you have to read scripts (using InfinityExplorer is the simplest way to read them, although you can't edit with it) a little bit, and you have to learn how to decompile and compile scripts (not that hard, but will involve learning how to use one of WieDU, DLTCEP or NI). then it's simply a matter of reading through those (decomplied) NPC scripts that you want to have multiple romances with and deleting those script blocks that cause romances to end if you've got another one active. you only need to do this for mod-NPCs, as the Ease-of-Use multiple romance component will do it for all the Bioware NPCs. so if you were wanting to romance Imoen and Kelsey simultaneously, you'd just check Imoen2.bcs, J#Klsy.bcs and (just to be safe) baldur.bcs and remove any blocks of the form
IF Global("ImoenRomanceActive",GLOBAL,2) other stuff THEN SetGlobal("J#KelseyRomanceActive",GLOBAL,3) other stuff END
and vice versa. it's actually not that hard - the hardest part is getting yr head sufficiently around WeiDu/ DLTCEP/ NI enough for them to de/recompile scripts for you - the rest is just cut-n-paste editing.
"A simple test of the relative merits of science and religion is to compare lighting your house at night by prayer or electricity" - A. C. Grayling
"EFF files have saves, too." - CamDawg
|| this is radio seanas || BP Series v3 || seanas at work ||
#12
Posted 21 December 2004 - 11:32 PM
#13
Posted 23 December 2004 - 12:14 AM
It's not the coding of the mods (Which really are only eliminating checks.) so much as the engine not being made to handle more than one romance at a time. It "could" be done better but it'd be irritating to build to say the least.
The great wolf Fenrir gapes ever at the dwelling of the gods.