Jump to content

NEED HELP: Scripter Needed! also Dialogue Editting


Kuribo827

Recommended Posts

Hey all! I'm almost done with a mod but can't make much progress unless I script a few things in my level. Unfortunately I'm not going to have much free time to soon so I cannot go on a scavenger hunt about the internet, looking for clear, basic tutorials that will help me learn the skills I need to finish off the mod. If anyone does happen to know of some easy to understand tutorials for scripting in GECK please link me anyway. If I can't get a scripter I'll use the links you've supplied and finish this mod whenever I can.

 

So at the moment the last big touches I have to do with my mod is get a few things properly scripted and working. If you want to help me out and write the scripts I need you will be given credit. I can't promise it and I don't know how likely it will be but I MIGHT even be willing to give some monetary compensation. I really need to get this finished. Hopefully though there's someone who wouldn't mind putting together this script for free.

 

Here is what you'd be scripting. The player comes across a secret base that's run by an Artificial Intelligence that only wants to allow good people into it. Since the player's deeds are broadcast on the radio, the AI will know if your character has good or bad karma. In the case of neutral or good, the AI allows the player to move around without problems. If the the player's Karma is bad it uses the base sentries to fire on the player. If the player should some day come back and their Karma has dropped, the AI will attack the player then. It should check the Karma not just on entering the base but all the time. I think this requires a gameblock or something?

 

Scripting it so the sentries fire on bad karma players is what I really want to get done. I needed to edit another script but that's not as important. I will list it here anyway. I've taken the model from DLC OA and placed the Ammo Dispenser in the base. I personally tried to edit the previous ammo dispenser script but my limited understanding seems to be the obstacle that makes even this venture into coding a success.

 

If anyone knows anything about modifying NPCs so that they're textual representation says something different, please also feel free to contact or link me to resources that will allow me to fix this. I wanted there to be a Mr. Handy that represented an avatar for the base AI and was going to just modify Wadsworth, but once again, I came into more trouble. If this was to get completed the avatar for the AI would also act like the sentries and fire on players with bad Karma. I think this would just be a matter of setting it to the proper faction.

 

With my time running short, I'm willing to scrap the reworked Mr. Handy (if I can't figure it out soon) and the Ammo dispenser. I really have to have the karma detecting sentries though. Thanks to anyone who supplied tutorials or links to information.

Link to comment
Share on other sites

I've written a basic scripting tutorial that you might find useful, the link is in my signature.

 

You'll probably want to use a triggerbox (see Creating Primitives) with an OnTriggerEnter block so that the code runs once when the player enters the triggerbox. You'll want to check the player's karma via GetActorValue and use some appropriate Faction Functions to change the turrets' reactions to the player. Something with a structure like this should work:

ScriptName TrigCheckPlayerKarmaScript

int bState
; 0 - Friendly
; 1 - Hostile

Begin OnTriggerEnter player

if bState
	if player.GetActorValue Karma > GetGameSetting fAlignEvilMaxKarma
		set bState to 0
		; Set friendly
	endif
elseif player.GetActorValue Karma <= GetGameSetting fAlignEvilMaxKarma
	set bState to 1
	; Set enemy
endif

End

I don't know very much about faction functions, but you could try using SetAlly and SetEnemy.

 

If you need the player's karma to be re-evaluated while they are within the area, then an OnTriggerEnter block isn't going to cut it, so you'll probably want to use a quest script with a GameMode block.

 

Cipscis

Link to comment
Share on other sites

I've written a basic scripting tutorial that you might find useful, the link is in my signature.

 

You'll probably want to use a triggerbox (see Creating Primitives) with an OnTriggerEnter block so that the code runs once when the player enters the triggerbox. You'll want to check the player's karma via GetActorValue and use some appropriate Faction Functions to change the turrets' reactions to the player. Something with a structure like this should work:

ScriptName TrigCheckPlayerKarmaScript

int bState
; 0 - Friendly
; 1 - Hostile

Begin OnTriggerEnter player

if bState
	if player.GetActorValue Karma > GetGameSetting fAlignEvilMaxKarma
		set bState to 0
		; Set friendly
	endif
elseif player.GetActorValue Karma <= GetGameSetting fAlignEvilMaxKarma
	set bState to 1
	; Set enemy
endif

End

I don't know very much about faction functions, but you could try using SetAlly and SetEnemy.

 

If you need the player's karma to be re-evaluated while they are within the area, then an OnTriggerEnter block isn't going to cut it, so you'll probably want to use a quest script with a GameMode block.

 

Cipscis

 

Thanks Cipscis. I've some programming experience with C++ but just can't seem to get the hang of programming or more technical things in game creation. I've book marked your page and will definitely read through it later.

 

Also thanks for the script and other information you gave me. I'll try solving my karma sensitive sentries on my own in case no scripters come forward that wouldn't mind collaborating with me before I run out of time. I reckon it's better to at least try then sit on my hands until times up.

Link to comment
Share on other sites

Cipscis, the second page of your programming tutorial is down.

 

I guess this is also a bump to see if there is anyone out there that can make this all easier. Does this forum even allow "bumps"?

 

Well worth a shot I guess.

Link to comment
Share on other sites

Archived

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

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...