decompiled .int file of friendly klint 2 dat

Discussion in 'Fallout General Modding' started by Nidhacker, Jul 3, 2007.

  1. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    could someone send me that file i want to knoq how that script is working and written

    pm to me

    thx
     
  2. jargo

    jargo Where'd That 6th Toe Come From?

    492
    May 25, 2003
    It's working exactly in the same way, as in Friendly Klint mod. Same script used.
     
  3. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    i can not decompile the acklint.int wether in the friendly klint mod nor in the friendly klint mod 2

    so can someone pls decompile me that script to an .ssl and send it to me?

    thx for any help
     
  4. jargo

    jargo Where'd That 6th Toe Come From?

    492
    May 25, 2003
    This mod was writen a long time when we have no oryginal compiller, and there was another compiller called ipp(from TeamX).
    Here you have Klint source script in ipp format (it is different syntax from ssl)

    Code:
    script ACKlint('ACKlint');
    uses stdlib,system;
    Var
    	Static_Reaction;
    	Evil_Critter;
    	Slavery_Tolerant;
    	Karma_Perception;
    	reaction_bonus_town_rep;
    	reaction_bonus_karma;
    	Only_Once;
    	Pole_gracza;
    	restock_obj;
    	InTimedEwent;
    	step_tile;
    
    function critter_p_proc;forward;
    function pickup_p_proc;forward;
    function Node999;forward;
    function Node998;forward;
    function Node005;forward;
    function Node004;forward;
    function Node003;forward;
    function Node002;forward;
    function Node001;forward;
    function Node014;forward;
    function Node013;forward;
    function Node012;forward;
    function Node011;forward;
    function Node010;forward;
    function Node009;forward;
    function Node008;forward;
    function Node007;forward;
    function Node006;forward;
    function Node1001;forward;
    function Node1002;forward;
    function talk_p_proc;forward;
    function timed_event_p_proc;forward;
    function push_p_proc;forward;
    function destroy_p_proc;forward;
    function look_at_p_proc;forward;
    function description_p_proc;forward;
    function use_obj_on_p_proc;forward;
    function use_skill_on_p_proc;forward;
    function damage_p_proc;forward;
    function map_enter_p_proc;forward;
    function start;forward;
    
    function critter_p_proc;
    begin
    	if SVAR[2]=0 then begin
    		SVAR[1]:=GVAR[40];
    		SVAR[3]:=GVAR[41];
    		SVAR[6]:=GVAR[42];
    		if SVAR[6]=0 then begin
    			SVAR[6]:=6;
    		end;
    		SVAR[2]:=1;
    	end;
    	if (SVAR[1]=0 AND DistanceObj(Self,Player)<5) then begin
    		Talk;
    	end;
    	if ((((((SVAR[4]=0 AND NOT(IsMoving(Player))) AND NOT(IsMoving(Self))) AND GetStat(Player,35)<GetStat(Player,7)) AND GetStat(Player,35)<20>1) then begin
    			AddTimerEvent(Self,1,1);
    			SVAR[4]:=1;
    		end;
    	end;
    	if (SVAR[5]=1 AND See(Self,Player)) then begin
    		Attack(0,1,0,0,30000,0,0);
    	end;
    	if ((SVAR[1]=1 AND SVAR[3]=0) AND NOT(InTimedEwent)) then begin
    		if SVAR[6]=6 then begin
    			Pole_gracza:=GetPosByVector(GetPos(Player),Rnd(1,5),Rnd(1,2));
    		end else begin
    			Pole_gracza:=GetPosByVector(GetPos(Player),Direction(GetPos(Self),GetPos(Player)),-SVAR[6]);
    		end;
    		if DistancePos(GetPos(Self),Pole_gracza)>SVAR[6] then begin
    			Go(Self,Pole_gracza,1);
    		end else begin
    			if DistancePos(GetPos(Self),Pole_gracza)>SVAR[6] / 2+1 then begin
    				Go(Self,Pole_gracza,0);
    			end;
    		end;
    		if ((SVAR[6]<>6 AND IsMoving(Self)) AND DistanceObj(Self,Player)<=SVAR[6] / 2+1) then begin
    			RegAnimFunc(2,Self);
    		end;
    	end;
    end;
    
    function pickup_p_proc;
    begin
    end;
    
    function Node999;
    begin
    	SayWOAnswer(751,118,50);
    	SVAR[1]:=2;
    end;
    
    function Node998;
    begin
    end;
    
    function Node005;
    begin
    	SayForAnswer(751,121);
    	if GetStat(Player,35)<GetStat(Player,7) then begin
    		Answer(4,751,100,@..............,50);
    	end;
    	if (GetStat(Self,35)<GetStat(Self,7) AND GetStat(Self,35)<50>GetSkill(Self,6) then begin
    							ScreenOff(600);
    							ScreenOn(600);
    							AdvanceTime(60 * (60 * 10));
    							if Success(RndBySkill(Self,7,0)) then begin
    								Heal(Self,Rnd(10,25));
    								DebugPrint(GetName(Self)+' healed some using doctor skill.');
    							end;
    						end else begin
    							ScreenOff(600);
    							ScreenOn(600);
    							AdvanceTime(15 * (60 * 10));
    							if Success(RndBySkill(Self,6,0)) then begin
    								Heal(Self,Rnd(5,15));
    								DebugPrint(GetName(Self)+' healed some using first aid skill.');
    							end;
    						end;
    					end;
    				end;
    			end;
    		end;
    	end;
    	if GetStat(Self,35)=GetStat(Self,7) then begin
    		SayForAnswer(751,113);
    	end else begin
    		if (GetStat(Self,35) * 100) / GetStat(Self,7)>=90 then begin
    			SayForAnswer(751,114);
    		end else begin
    			if (GetStat(Self,35) * 100) / GetStat(Self,7)>=70 then begin
    				SayForAnswer(751,101);
    			end else begin
    				SayForAnswer(751,105);
    			end;
    		end;
    	end;
    	Answer(4,751,112,@Node005,50);
    	DebugPrint('Uzyto opcji druzyny');
    end;
    
    function Node1002;
    begin
    	if GetSkill(Self,7)>GetSkill(Self,6) then begin
    		ScreenOff(600);
    		ScreenOn(600);
    		AdvanceTime(60 * (60 * 10));
    		if Success(RndBySkill(Self,7,0)) then begin
    			Heal(Player,Rnd(10,25));
    			DebugPrint(GetName(Player)+' healed some using doctor skill.');
    		end;
    	end else begin
    		ScreenOff(600);
    		ScreenOn(600);
    		AdvanceTime(15 * (60 * 10));
    		if Success(RndBySkill(Self,6,0)) then begin
    			Heal(Player,Rnd(5,15));
    			DebugPrint(GetName(Player)+' healed some using first aid skill.');
    		end;
    	end;
    	SayForAnswer(751,139);
    	Answer(4,751,112,@Node005,50);
    	DebugPrint('Uzyto opcji druzyny - leczenie gracza');
    end;
    
    function talk_p_proc;
    Var
    	loc0, loc1, loc2, loc3;
    begin
    	if SVAR[3]=1 then begin
    		OpenDialog(751,Self,4,-1,-1);
    		Node010;
    		CloseDialog;
    	end else begin
    		if SVAR[1]=0 then begin
    			OpenDialog(751,Self,4,-1,-1);
    			Node001;
    			CloseDialog;
    		end else begin
    			if SVAR[1]=1 then begin
    				loc0:=SlotX(Self,0);
    				OpenDialog(751,Self,4,-1,-1);
    				Node005;
    				CloseDialog;
    				if SlotX(Self,0)<>loc0 then begin
    					if SlotX(Self,0)=0 then begin
    						loc0:=CreateObj(16777217,0,0,751);
    					end else begin
    						if (GetObjectID(SlotX(Self,0))=1 OR GetObjectID(SlotX(Self,0))=379) then begin
    							loc0:=CreateObj(16777342,0,0,751);
    						end else begin
    							if ((GetObjectID(SlotX(Self,0))=232 OR GetObjectID(SlotX(Self,0))=14) OR GetObjectID(SlotX(Self,0))=3) then begin
    								loc0:=CreateObj(16777338,0,0,751);
    							end else begin
    								if (GetObjectID(SlotX(Self,0))=349 OR GetObjectID(SlotX(Self,0))=348) then begin
    									loc0:=CreateObj(16777331,0,0,751);
    								end else begin
    									if ((GetObjectID(SlotX(Self,0))=240 OR GetObjectID(SlotX(Self,0))=380) OR GetObjectID(SlotX(Self,0))=2) then begin
    										loc0:=CreateObj(16777344,0,0,751);
    									end else begin
    										if (GetObjectID(SlotX(Self,0))=74 OR GetObjectID(SlotX(Self,0))=265) then begin
    											loc0:=CreateObj(16777346,0,0,751);
    										end else begin
    											if ((GetObjectID(SlotX(Self,0))=239 OR GetObjectID(SlotX(Self,0))=17) OR GetObjectID(SlotX(Self,0))=381) then begin
    												loc0:=CreateObj(16777348,0,0,751);
    											end else begin
    												if (GetObjectID(SlotX(Self,0))=524 OR GetObjectID(SlotX(Self,0))=113) then begin
    													loc0:=CreateObj(16777700,0,0,751);
    												end;
    											end;
    										end;
    									end;
    								end;
    							end;
    						end;
    					end;
    					loc1:=SlotX(Self,1);
    					loc2:=SlotX(Self,0);
    					loc3:=GetStat(Self,35);
    					Heal(loc0,loc3);
    					SetVisible(Self,1);
    					MoveAllItems(Self,loc0);
    					SetCritterPos(loc0,GetPos(Self),GetFloor(Self));
    					Anim(loc0,1000,GetPerk(1,Self,10));
    					if SVAR[3]<>1 then begin
    						SetBattleParm(loc0,1,6,0);
    						SetBattleParm(loc0,1,5,GetPerk(1,Self,5));
    						LinkAlly(loc0);
    						GVAR[40]:=SVAR[1];
    						GVAR[41]:=SVAR[3];
    						GVAR[42]:=SVAR[6];
    						if loc1<>0 then begin
    							ChooseWeapon(loc0,loc1);
    						end;
    						if loc2<0>4 then begin
    				Say(Self,'A little blood ain t hurt no-one',8);
    			end else begin
    				if Rnd(1,6)=4 then begin
    					Say(Self,'I love the sound of cracking ribs!',8);
    				end;
    			end;
    		end;
    	end;
    end;
    
    function map_enter_p_proc;
    Var
    	loc0, loc1, loc2, loc3, loc4;
    begin
    	SVAR[4]:=0;
    	if (CurrentLocation=126 AND Misc(14,0)) then begin
    		loc4:=CreateObj(265,0,0,-1);
    		GiveItems(Self,loc4,1);
    		loc1:=CreateObj(16777217,0,0,751);
    		loc2:=SlotX(Self,1);
    		loc3:=SlotX(Self,0);
    		SetVisible(Self,1);
    		MoveAllItems(Self,loc1);
    		Heal(loc1,52);
    		SetCritterPos(loc1,GetPos(Self),GetFloor(Self));
    		Anim(loc1,1000,GetPerk(1,Self,10));
    		SetBattleParm(loc1,1,6,0);
    		SetBattleParm(loc1,1,5,GetPerk(1,Self,5));
    		GVAR[40]:=SVAR[1];
    		GVAR[41]:=SVAR[3];
    		GVAR[42]:=SVAR[6];
    		if loc2<>0 then begin
    			ChooseWeapon(loc1,loc2);
    		end;
    		if loc3<>0 then begin
    			ChooseWeapon(loc1,loc3);
    		end;
    		Free(Self);
    	end;
    	if (GetItemCountByXY(21303,0,33555374) AND GVAR[10]<>0) then begin
    		loc0:=GetItemAddressByXY(21303,0,33555374);
    		SetXY(loc0,19698,0);
    	end;
    end;
    
    function start;
    begin
    end;
    
    begin
    end.
    
     
  5. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    thx man for that script i found that ipp decompiler too what is the best prog to compile ipp to int files by the way?

    thx for ya help

    the ipp compiler 2.06 seem not to work or i can't handle it yet
     
  6. Anchorite

    Anchorite First time out of the vault

    11
    Jun 10, 2005
  7. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    are you sure that int2ssl works for ipp --> int or ssl

    cause I already tried this decompiler but it won't work for the klint mod in the way of gettin a ssl out of the int

    thx anyway
     
  8. Anchorite

    Anchorite First time out of the vault

    11
    Jun 10, 2005
  9. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    thx for that file helped a lot
     
  10. Nidhacker

    Nidhacker First time out of the vault

    20
    Jan 5, 2006
    hey got a question about that klint mod, how does it works is there any tutorial for that great mod?

    i just wanted to add for example mynoc by that script but my mod is quiet a mess can anybody help me pls

    what are the most important values there and what have to be registered
    thx for any help