Fulqrum Publishing Home   |   Register   |   Today Posts   |   Members   |   UserCP   |   Calendar   |   Search   |   FAQ

Go Back   Official Fulqrum Publishing forum > Fulqrum Publishing > Star Wolves

Star Wolves 3D space RPG with deep strategy and tactical elements

View Poll Results: What should I Prioritize on?
Basebuilding! 1 25.00%
Balancing! 0 0%
The Mod Manager! 0 0%
Asteroid ore-dropping! 0 0%
Intensive Bugfixing! 3 75.00%
Voters: 4. You may not vote on this poll

Reply
 
Thread Tools Display Modes
  #171  
Old 08-22-2016, 01:44 PM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default

Thanks for the hint, im going to look into it

And I don't really plan to stop the development of this mod until im Finished, the main thing im working on right now is basically the Path-finding for the CPU-Players, I have found a way to do that, but that would require me to write 120x120 paths from systems to systems, since I will never write that amount of code by hand I am currently writing a additional program with VB.NET to automatically index all systems in Star wolves and using an algorithm to create lua code which represent table's with the shortest way to a possible system

like so:
{"_AI_IN_THIS_SYSTEM", "AI_NEEDS_TO_GO_TO_THIS_SYSTEM", {"Shortest way from Neighbor of THIS_SYSTEM to AI_TARGET_SYSTEM"}};

Im struggling to do that tbh, but I won't give up!.

-----------------------------------------------
Also, I tweaked the "Repair" function at the maintance stations, so you won't immediatley have 100% HP, instead you will have to wait a certain amount of time until your HP Completely recharges, increments are at 10% of total Hull HP each 0.1s

BUT like with all of my "Plugins" it is completely customizable, see the "InitTeamScript" Section.

I named it ASRS:
Code:
--      /\          /\\ \\  /\\/\\       /\\/\\\\\\\  /\\      /\\\\\\\\
--     /\ \\      /\\    /\\/\\/\ /\\   /\\\/\\    /\\/\\      /\\      
--    /\  /\\      /\\      /\\/\\ /\\ / /\\/\\    /\\/\\      /\\      
--   /\\   /\\       /\\    /\\/\\  /\\  /\\/\\\\\\\  /\\      /\\\\\\  
--  /\\\\\\ /\\         /\\ /\\/\\   /\  /\\/\\       /\\      /\\      
-- /\\       /\\  /\\    /\\/\\/\\       /\\/\\       /\\      /\\      
--/\\         /\\   /\\ \\  /\\/\\       /\\/\\       /\\\\\\\\/\\\\\\\\
--                                 -  =   V E R S I O N   1 . 1   =  -                              
--/\\\\\\\    /\\\\\\\\/\\\\\\\        /\       /\\/\\\\\\\      /\\ \\   /\\\ /\\\\\\      /\       /\\\ /\\\\\\/\\    /\\\\     /\\\     /\\
--/\\    /\\  /\\      /\\    /\\     /\ \\     /\\/\\    /\\  /\\    /\\      /\\         /\ \\          /\\    /\\  /\\    /\\  /\ /\\   /\\
--/\\    /\\  /\\      /\\    /\\    /\  /\\    /\\/\\    /\\   /\\      	   /\\        /\  /\\         /\\    /\\/\\        /\\/\\ /\\  /\\
--/\ /\\      /\\\\\\  /\\\\\\\     /\\   /\\   /\\/\ /\\         /\\          /\\       /\\   /\\        /\\    /\\/\\        /\\/\\  /\\ /\\
--/\\  /\\    /\\      /\\         /\\\\\\ /\\  /\\/\\  /\\          /\\       /\\      /\\\\\\ /\\       /\\    /\\/\\        /\\/\\   /\ /\\
--/\\    /\\  /\\      /\\        /\\       /\\ /\\/\\    /\\  /\\    /\\      /\\     /\\       /\\      /\\    /\\  /\\     /\\ /\\    /\ \\
--/\\      /\\/\\\\\\\\/\\       /\\         /\\/\\/\\      /\\  /\\ \\        /\\    /\\         /\\     /\\    /\\    /\\\\     /\\      /\\
--                                                                                                                                        
--  /\\ \\      /\\   /\\\\\\\    /\\/\\\\\\\  /\\\ /\\\\\\
--/\\    /\\ /\\   /\\/\\    /\\  /\\/\\    /\\     /\\    
-- /\\      /\\       /\\    /\\  /\\/\\    /\\     /\\    
--   /\\    /\\       /\ /\\      /\\/\\\\\\\       /\\    
--      /\\ /\\       /\\  /\\    /\\/\\            /\\    
--/\\    /\\ /\\   /\\/\\    /\\  /\\/\\            /\\    
--  /\\ \\     /\\\\  /\\      /\\/\\/\\            /\\    
--Author: Nocalora29

--Replaces:
--Data\Scripts\Include\DockStation.script -> DialogR_fin()

--This Plugin disables the INSTANT 100% HP Recovery from Repair Stations
--Instead of magically repairing your hull to 100% in a sec, this Plugin -
--will Repair your Mothership over time, but only if your mothership isn't moving.
Default_ASRS_Name = "ASRS";
Default_ASRS_Error_InProg = "ASRS: Repair allready in Progress!";
Default_ASRS_Error_MoveDetect = "ASRS: Repair Cancelled!, you need to stand still!";
Default_ASRS_Fin = "ASRS: Successfully Repaired!";

__ASRS_InProgress = FALSE;
function _ASRS_RepairMS_Init()
	local AllowASRS = GetQuestLabel("__ASRS@Config_Allow");
	if (AllowASRS=="True") then
		_ASRS_RepairMS();
	else
		local N=GetPlayerCredits();
		if (N>=1000) then
			RepairBase();
			SubPlayerCredits(1000);
			OutputToScreenLog("#UI_TradeStationOkRepair",7);
		else	
			OutputToScreenLog("#UI_TradeStationNotRepair",7);
		end;
	end;

end;

function _ASRS_RepairMS()
	if (__ASRS_InProgress==FALSE) then
		__ASRS_InProgress = TRUE;
		local _ASRS_Allow = GetQuestLabel("");
		local PCash = GetPlayerCredits();
		local RepCost=1000;
		local _PCarc = GetPlayerMotherShip();
		local _PMSMaxHP = _PCarc:GetMaxHP();

		if (PCash>=RepCost) then
			SubPlayerCredits(RepCost);
			--Begin Repair Process
			local MSPos = _PCarc:GetPosition();
			setglobal("_ASRS_MSPos", MSPos);
			
			_ASRS_RepairMS_2(_PMSMaxHP);
		else	
			OutputToScreenLog("#UI_TradeStationNotRepair",7);

		end;
	else
		OutputToScreenLog(Default_ASRS_Error_InProg,7);
	end;
end;

__ASRS_MS_CompleteP = 0;
__ASRS_MS_MaxSpeed = 0;
__ASRS_MS_MaxSteeringPower = 0;
__ASRS_ILShowTime = 0.4;
__ASRS_OutOfSphere = FALSE;
function _ASRS_RepairMS_2(_PMSMaxHP)
	setglobal("_ASRS_PMSMaxHP", _PMSMaxHP);
	local RepDelay = tonumber(GetQuestLabel("__ASRS@Config_RepairDelay"));
	local RepAmount = tonumber(GetQuestLabel("__ASRS@Config_RepairAmount"));
	local UsePerc = GetQuestLabel("__ASRS@Config_UsePercentageRepair");
	local Perc = tonumber(GetQuestLabel("__ASRS@Config_Percentage"));
	local Req_StandStill = GetQuestLabel("__ASRS@Config_Require_StandStill");
	local DisDrives	= GetQuestLabel("__ASRS@Config_DisableDrive");
	local CRadius = tonumber(GetQuestLabel("__ASRS@Config_StandStill_Radius"));
	local _PCarc = GetPlayerMotherShip();
	local _PCurHP = _PCarc:GetCurHP();
	local PercRAND = GetQuestLabel("__ASRS@Config_PercRAND");
	local PercRANDMin = tonumber(GetQuestLabel("__ASRS@Config_PercRAND_Min"));
	local PercRANDMax = tonumber(GetQuestLabel("__ASRS@Config_PercRAND_Max"));

	--Options
	-- // Disable Drives
	if (DisDrives=="True") then
		__ASRS_MS_MaxSpeed = _PCarc:GetMaxSpeed();
		__ASRS_MS_MaxSteeringPower = _PCarc:GetSteeringPower();
		_PCarc:SetMaxSpeed(0);
		_PCarc:SetSteeringPower(0);
	end;
	--Repair
	if (Req_StandStill=="False") then
		--Does not need to stand still
		if (UsePerc=="False") then
			--Value Repair
			if (_PMSMaxHP >= _PCurHP) then
				_PCarc:SetHP(_PCurHP + RepAmount);
				Timer_Seq(RepDelay, _ASRS_RepairMS_Loop);
			end;
		else
			--Percentage Repair
			if (_PMSMaxHP >= _PCurHP) then
				local PercVal = 0;
				if (PercRAND=="False") then 
					PercVal = ((_PMSMaxHP / 100) * Perc); 
				else 
					PercVal = ((_PMSMaxHP / 100) * random(PercRANDMin, PercRANDMax)); 
				end;
				_PCarc:SetHP(_PCurHP + PercVal);
				
				__ASRS_MS_CompleteP = (_PMSMaxHP / _PCurHP) * 100
				OutputToScreenLog("ASRS: "..format("%.2f", __ASRS_MS_CompleteP).."% Completed", RepDelay+__ASRS_ILShowTime);
				
				Timer_Seq(RepDelay, _ASRS_RepairMS_Loop);
			end;
		end;
	else
		--Does need to stand still
		--_ASRS_OutsideRange_Trigger = CreateTrigger();
		--_ASRS_OutsideRange_Trigger:AttachEvent(_EVENT_INSIDEVOLUME);
		--_ASRS_OutsideRange_Trigger:SetObject(_PCarc);
		--_ASRS_OutsideRange_Trigger:SetVolume(_PCarc:GetPosition(), CRadius);
		--_ASRS_OutsideRange_Trigger:AttachCondition(TrueCondition);
		--_ASRS_OutsideRange_Trigger:AttachAction(_ASRS_RepairMS_LeaveRadius);
		--_ASRS_OutsideRange_Trigger:Activate();
		_ASRS_OutsideRange_Trigger = NewTrigger("outside", TrueCondition, _ASRS_RepairMS_LeaveRadius, _PCarc, _PCarc:GetPosition(), CRadius, FALSE);
		_ASRS_OutsideRange_Trigger:Activate();
		
		if (__ASRS_OutOfSphere==FALSE) then
			if (UsePerc=="False") then
				--Value Repair
				if (_PMSMaxHP >= _PCurHP) then
					_PCarc:SetHP(_PCurHP + RepAmount);
					Timer_Seq(RepDelay, _ASRS_RepairMS_Loop);
				end;
			else
				--Percentage Repair
				if (_PMSMaxHP >= _PCurHP) then
					local PercVal = 0;
					if (PercRAND=="False") then 
						PercVal = ((_PMSMaxHP / 100) * Perc); 
					else 
						PercVal = ((_PMSMaxHP / 100) * random(PercRANDMin, PercRANDMax)); 
					end;
					_PCarc:SetHP(_PCurHP + PercVal);
					
					__ASRS_MS_CompleteP = (_PCurHP / _PMSMaxHP) * 100
					OutputToScreenLog("ASRS: "..format("%.2f", __ASRS_MS_CompleteP).."% Completed", RepDelay+__ASRS_ILShowTime);
				
					Timer_Seq(RepDelay, _ASRS_RepairMS_Loop);
				end;
			end;
		else
			--Movement Detected
			OutputToScreenLog(Default_ASRS_Error_MoveDetect,7);
			__ASRS_InProgress = FALSE;
			__ASRS_OutOfSphere = FALSE;
			_ASRS_OutsideRange_Trigger:Delete();
		end;
	end;
	--Finish
	if (_PCurHP>=_PMSMaxHP) then 
		__ASRS_InProgress = FALSE;
		__ASRS_OutOfSphere = FALSE;
		_ASRS_OutsideRange_Trigger:Delete();
		
		_PCarc:SetHP(_PMSMaxHP); 
		OutputToScreenLog(Default_ASRS_Fin,7);
		
		--Options
		-- // Enable Drives
		if (DisDrives=="True") then
			_PCarc:SetMaxSpeed(__ASRS_MS_MaxSpeed);
			_PCarc:SetSteeringPower(__ASRS_MS_MaxSteeringPower);
		end;
		
	end;
end;

function _ASRS_RepairMS_LeaveRadius()
	__ASRS_OutOfSphere = TRUE;
end;

function _ASRS_RepairMS_Loop()
	local _PMSMaxHP = getglobal("_ASRS_PMSMaxHP");
	_ASRS_RepairMS_2(_PMSMaxHP);
end;
You could in theory allready use this, only be sure to load it by any system.lst and Place Replace this COMPLETE Function in scripts\dockstation.script
Code:
function DialogR_fin0()

end;
with
Code:
function DialogR_fin0()
-- > @Plugins\ASRS.lua
	_ASRS_RepairMS_Init();
end;
-InitTeamScript-
Code:
	SetQuestLabel("__ASRS@Config_Allow", 				"True");		-- ASRS Plugin - Boolean - Allow ASRS? [True = Use ASRS, False = Use Vanilla Repair System]
	SetQuestLabel("__ASRS@Config_RepairDelay", 			0.1);			-- ASRS Plugin - Repair Rate (Seconds)
	SetQuestLabel("__ASRS@Config_RepairAmount", 		100);			-- ASRS Plugin - Repair amount per RepairDelay
	SetQuestLabel("__ASRS@Config_UsePercentageRepair",  "True");		-- ASRS Plugin - Repair depending on Percentage of Max HP
	SetQuestLabel("__ASRS@Config_Percentage",			3);				-- ASRS Plugin - Percentage Value
	SetQuestLabel("__ASRS@Config_PercRAND",				"True");		-- ASRS Plugin - Eanble Random Repair Percentage
	SetQuestLabel("__ASRS@Config_PercRAND_Min",			3);				-- ASRS Plugin - Random Percentage Min
	SetQuestLabel("__ASRS@Config_PercRAND_Max",			7);				-- ASRS Plugin - Random Percentage Max
	SetQuestLabel("__ASRS@Config_DisableDrive",			"False");		-- ASRS Plugin - Disable Mothership Drives (No Movement Possible until Completion)
	SetQuestLabel("__ASRS@Config_Require_StandStill", 	"True");		-- ASRS Plugin - Require - Standing Still (Mothership)
	SetQuestLabel("__ASRS@Config_StandStill_Radius",	5);			    -- ASRS Plugin - Max Range before Cancel of Repair
Just paste the above code ANYWHERE in the InitTeamScript file
If anyone feels like it, feel free to install it and tell me how it feels like.

-System.lst- Section
IF you use Expansion Mod: use the plugins\system.lst and write it in there, also place the file you created with the code at top of this post and you're good to go.
IF you use the vanilla game: use the scripts\system.lst and write in in there also, watch out that you place the file where you have pointed at it in the system.lst

=This works for a vanilla game and a modded game=
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)

Last edited by nocalora29; 08-22-2016 at 06:02 PM.
Reply With Quote
  #172  
Old 08-22-2016, 03:53 PM
Lotrek Lotrek is offline
Approved Member
 
Join Date: Jan 2012
Posts: 312
Default

Quick update. the file was approved. I deleted it so as not to confuse people.
Reply With Quote
  #173  
Old 09-14-2016, 10:46 PM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default Statup #01

A Quick Status Update of 0.6.2X.

-CPU PLAYERS:
I think I have found an "acceptable" path-finding system for the CPU Players for the galaxy map, it certainly isn't anything close to "Intelligent" or "Smart" but it will do for a preview version.

The general behavior of AI's are done mostly (Behavior if not colliding with other AI's or the player), but I still need to write the Combat, Neutral and Friendly In-Map AI, so the AI has something to do when you're in the same system as the AI, depending on the Current Relation.

The economical Behavior of the AI's are also OK for the moment, they will upgrade their fleet depending on their Current Credits status, and on their current Location (They cannot trade on systems with no Trade Station), but they still can upgrade their fleets on "Random" Circumstances, Because I have added a small Random Event system for these AI's, like for example: "AI Found hidden stash depot. And because of that, their Fleet-Strength rises up.

But thats enough about the AI's.

-ASRS:
The "A Simple Repairstation Script" is also pretty much completely finished (Fixed a bug here and there), so it wouldn't be that wise to use the source code from my other Post anymore.

-Elite Templars:
--New Subfaction:
There is now a new Sub-subfaction for the Templars, besides the known Elite Templars and Holy Paladins, there is also now a group called "Magister's Inquisitors" MaqInq for short. These are the actual Top-Of-The-Line Pilots of the "Magister", they also execute Assasinations by the "Magister"'s Orders.
Basically: You didn't like to fight the Paladins at all?, then you like to fight the Inquisitors even less!.
--Modified 3D Models of existing Ships:
Some would say its a pretty lazy doing of mine, but I think the changes look badass! .





1.st Pic: Elite Templar Level
2.nd Pic: Holy Paladin Level
3.rd Pic: Magister's Inqusitor Level

....and yes, thats a Precursor Portal, and also yes, these spheres are the "unknown" portals found throughout the game, although they don't give these ships the ability teleport freely around time and space, they look pretty nice and sexy on these ships. I have also set them to Rotate around the ship.

Heres a Video of MaqInq Ship: http://bit.ly/2cxBdRU [Shortened because the Auto-YT Embedder will break this post]

----------------------------------------------------
If any of you remaining people on this Forum still have any Questions regarding this Mod, or modding of this game in general: Feel free to ask any Questions that come up your Mind!.
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)
Reply With Quote
  #174  
Old 10-01-2016, 03:07 AM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default

Hmpf, apparently the "direct" links of ModDB will get terminated after some days/weeks... I had to replace them with just links going to the DL-Page.
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)
Reply With Quote
  #175  
Old 10-01-2016, 04:38 PM
EmileKhadaji EmileKhadaji is offline
Approved Member
 
Join Date: Aug 2012
Posts: 23
Default

Hy!

Dowloaded your mod a few days ago. (just replaying the game because of your mod)

So far everything was fine. But found 2 bugs!?

First: Went "NESF" storyline, after you talk to Alexandra in Gideon. You are to leave the portal to Solpugae. So went to portal. It fired up normally. Then nothing happened. No load to new sector. (Lion mk2)
Solved it with starjump.

Second: After delivered the data to Aurora placid docks. You get the "Free time" objective. Now that stays. After 20 jumps no new mission is being added.
So im stuck.

Also some observation. There are no random contacts. The space is just in its basic state. Do I need to put the files from addons to main installation?

PS: AK-47 cannon description is just HILARIOUS!
Reply With Quote
  #176  
Old 10-01-2016, 11:47 PM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default @EmileKhadaji

Hey, Thanks for playtesting my mod
Quote:
First: Went "NESF" storyline, after you talk to Alexandra in Gideon. You are to leave the portal to Solpugae. So went to portal. It fired up normally. Then nothing happened. No load to new sector. (Lion mk2)
Solved it with starjump.

Second: After delivered the data to Aurora placid docks. You get the "Free time" objective. Now that stays. After 20 jumps no new mission is being added.
So im stuck.
Could you try to recreate those bugs? (Going back to an older save and playing to the part until the bug occurs and then EXIITNG the game) and giving me the LOGfile.txt via attaching it in your next post or some filesharing site?, and please do the same with the 2nd bug.

Without a LOG there isn't much I can do ^^, all the important data is in there and it will help me greatly if I got the logfile.txt

Quote:
Also some observation. There are no random contacts. The space is just in its basic state.
That is very strange indeed... I really need the LOGfile for this also.

Quote:
PS: AK-47 cannon description is just HILARIOUS!
Glad it made you laugh

Thank you very much for this bugreport!

PS: The LOGfile.txt is in your main Game directory, where the sw3cw.exe is located.
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)
Reply With Quote
  #177  
Old 10-02-2016, 04:47 PM
EmileKhadaji EmileKhadaji is offline
Approved Member
 
Join Date: Aug 2012
Posts: 23
Default

And logfile size exceds the forum limit....

This is saved after the portal:
https://www.dropbox.com/s/9stj48rezz...Gfile.txt?dl=0

And this one after the delivery:
https://www.dropbox.com/s/9stj48rezz...Gfile.txt?dl=0

Keep up the good work!
Reply With Quote
  #178  
Old 10-02-2016, 05:24 PM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default @EmileKhadaji

Thanks!, I try my best holding this mod in shape.

After some inspection, it seems that both the bugs you're experiencing are related to the same Issue, something in the bank-script broke seemingly, I can only guess why.

Please apply the (2) latest new hotfixes (both upped today) and replay one last time to the parts where you had these bugs (You must load a save file before you entered the System where the bug occured, thats very important.)

Hotfixes: http://www.moddb.com/mods/sw3exp/downloads

And IF the bugs still occur, send the logfile again.
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)
Reply With Quote
  #179  
Old 10-02-2016, 11:17 PM
EmileKhadaji EmileKhadaji is offline
Approved Member
 
Join Date: Aug 2012
Posts: 23
Default

Okay, done what you asked. And still no joy.
Both bugs are present.

Should I make a new clean install? Maybe somewhere something got messed up?

https://www.dropbox.com/s/9stj48rezz...Gfile.txt?dl=0
Reply With Quote
  #180  
Old 10-03-2016, 01:45 AM
nocalora29's Avatar
nocalora29 nocalora29 is offline
¯\_ ͯ‿ ͯ_/¯
 
Join Date: Dec 2011
Posts: 518
Default

Quote:
[ScriptSystem] error: attempt to perform arithmetic on local `bank' (a nil value)
<string "DATA/Addons/@SW3_Expansion/sw3_expansion_ma...": line 127>
It seems the game just can't fix it by itself this time, I fear you might have to start a new game, but I will keep searching for anything out of the ordinary in the files.

Im sorry, this is not the first time a game has been broken by that, I have applied extremely many fixes to that script by now, and still, someday it will still break by itself, even though this fix should really do it this time around.

But!, would you kindly post me a save-file (a save where you are several systems away from the problematic system), maybe Im able to track down the problem that way.
__________________
Discord: Nocalora#6847 | SW3.Expansion Thread | SWX.MouseMovementFix | SWX.TUVMark+Src (.tuv editing Tool) | SWX.SLOTMark+Src (.ini Slots editing Tool)
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 02:57 AM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © 2007 Fulqrum Publishing. All rights reserved.