Engine start randomness /Random seed script not working (SOLVED)

oldyz

Well-known member
This account is temporarily muted.
Hello, i am tryning to make the engine apply random stuff, including everytime the engine starts from scratch.

for example , for tests i have noticed that completely shutting down the engine & re-starting, the test level's random elements & patterns will always be the same, you only have variations if you quit, go back to the menu & re-start or continue the level.

to try to solve this i tried to apply this scrip by msmalik681 http://www.chronocrash.com/forum/index.php?topic=4528.msg62870#msg62870
and the engine wont start.

Kratus shared this version:

Code:
void randomSeed()
{//Thanks to msmalik681 RANDOM++ SCRIPT
	
	if(getlocalvar("seed") == NULL()){
		float seed; //INITIALIZE SEED.
		
		if(seed == NULL()){seed = 1;} //START IT OFF
		
		seed++; //INCREMENT SEED
		srand(seed); //APPLY SEED TO RANDOM FUNCTION
		setlocalvar("seed", 1);
	}
}

but did not seem to affect anything
 
oldyz

I made some changes in the original Malilk's script to adapt in other SOR2X routines. In this case, I suggest to use the original msmalik681 script

Code:
void main()
{//msmalik681 random++ script.

    if(openborvariant("in_menuscreen")==1) //confirm you are in menu.
	{
		int seed; //initialize seed.
		If(seed==NULL()){seed=1;} //start it off.
		Seed++; //increment seed.
		srand(seed); //apply seed to random function.
	}
}

By using this code, you will see that your random scripts will be more "randomized" than before, especially at the first playthrough after the engine is open.
 
oldyz  Just like kratus said use my original script it should work just fine for you. Did you remember to add alwaysupdate 1 ? And my script should be saved in updated.c or update.c in the scripts folder.
 
Kratus & msmalik681

thanks, but the script  just posted does not let OpenBor start - i believe i am adding the script wrong here is the complete Update.c that does not start:
Code:
void main(){
	void vSelf = getplayerproperty(0, "entity");
	int r = getentityproperty(vSelf, "rush_count");
	void vAniPos = getentityproperty(vSelf, "animpos");
	void vAniID = getentityproperty(vSelf,"animationID");
	void iUp = playerkeys(0, 0, "moveup");
	void iDown = playerkeys(0, 0, "movedown");
	void iLeft = playerkeys(0, 0, "moveleft");
	void iRight = playerkeys(0, 0, "moveright");
	void iAttack = playerkeys(0, 0, "attack");
	void vSelf2 = getplayerproperty(1, "entity");
	int r2 = getentityproperty(vSelf2, "rush_count");
	void vAniID2 = getentityproperty(vSelf2,"animationID");
	void vAniPos2 = getentityproperty(vSelf2, "animpos");
	void iUp2 = playerkeys(1, 0, "moveup");
	void iDown2 = playerkeys(1, 0, "movedown");
	void iLeft2 = playerkeys(1, 0, "moveleft");
	void iRight2 = playerkeys(1, 0, "moveright");
	void iAttack2 = playerkeys(1, 0, "attack");
	int time = openborvariant("elapsed_time");
	if (vAniID == openborconstant("ANI_RISE")){
		if (vAniPos == 0){
			if (iUp){ 
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL6")); 
			}else if (iDown){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL5")); 
			}else if (iLeft){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8")); 
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}
			}else if (iAttack){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FOLLOW10"));               
			}    
		}
	}
	if (vAniID2 == openborconstant("ANI_RISE")){
		if (vAniPos2 == 0){
			if (iUp2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL6")); 
			}else if (iDown2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL5")); 
			}else if (iLeft2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8")); 
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}
			}else if (iAttack2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FOLLOW10"));
			}
		}
	}
	if (vAniID == openborconstant("ANI_FOLLOW4")){
		drawstring(21, 60, 4, "Counter");
	}if (vAniID == openborconstant("ANI_FREESPECIAL39")){
		drawstring(21, 60, 4, "Recover");
	}if (vAniID2 == openborconstant("ANI_FOLLOW4")){
		drawstring(255, 60, 4, "Counter");
	}if (vAniID2 == openborconstant("ANI_FREESPECIAL39")){
		drawstring(255, 60, 4, "Recover");
	}if (vAniID == openborconstant("ANI_FOLLOW10")){
		drawstring(21, 60, 4, "SlashBack");
	}if (vAniID2 == openborconstant("ANI_FOLLOW10")){
		drawstring(225, 60, 4, "SlashBack");
	}if(r >= 4  && r <= 5){
		drawstring(21, 60, 3, "good");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 6 && r <= 7){
		drawstring(21, 60, 3, "great");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r == 8 && r <= 9){
		drawstring(21, 60, 3, "super");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 10 && r <= 14){
		drawstring(21, 60, 4, "killer");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 15 && r <= 19){
		drawstring(21, 60, 4, "butcher");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 20){
		drawstring(21, 60, 4, "Slasher");
		drawstring(21, 80, 1, "Bonus_"+75*r);
	}if(r2 >= 4 && r2 <= 5){
		drawstring(255, 60, 3, "good");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 6 && r2 <= 7){
		drawstring(255, 60, 3, "great");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 8 && r2 <= 9){
		drawstring(255, 60, 3, "super");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 10 && r <= 14){
		drawstring(255, 60, 4, "killer");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 15 && r <= 19){
		drawstring(255, 60, 4, "butcher");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 20){
		drawstring(255, 60, 4, "slasher");
		drawstring(250, 80, 1, "Bonus_"+75*r2);
	}if (vSelf == NULL() && vSelf2 == NULL()){
		if (getglobalvar("crd") >= 1 || getglobalvar("crd2") >= 1 || getglobalvar("crd3") >= 1 || getglobalvar("crd4") >= 1){
			drawstring(125, 100, 4, "continue");
		if (time >= getglobalvar("elapsed_time") + 600 && time <= getglobalvar("elapsed_time") + 999){
			drawstring(155, 120, 3, "9");
		}if (time >= getglobalvar("elapsed_time") + 1000 && time <= getglobalvar("elapsed_time") + 1399){
			drawstring(155, 120, 3, "8");
		}if (time >= getglobalvar("elapsed_time") + 1400 && time <= getglobalvar("elapsed_time") + 1799){
			drawstring(155, 120, 3, "7");
		}if (time >= getglobalvar("elapsed_time") + 1800 && time <= getglobalvar("elapsed_time") + 2099){
			drawstring(155, 120, 3, "6");
		}if (time >= getglobalvar("elapsed_time") + 2100 && time <= getglobalvar("elapsed_time") + 2399){
			drawstring(155, 120, 3, "5");
		}if (time >= getglobalvar("elapsed_time") + 2400 && time <= getglobalvar("elapsed_time") + 2699){
			drawstring(155, 120, 3, "4");
		}if (time >= getglobalvar("elapsed_time") + 2700 && time <= getglobalvar("elapsed_time") + 2999){
			drawstring(155, 120, 4, "3");
		}if (time >= getglobalvar("elapsed_time") + 3000 && time <= getglobalvar("elapsed_time") + 3299){
			drawstring(155, 120, 4, "2");
		}if (time >= getglobalvar("elapsed_time") + 3300 && time <= getglobalvar("elapsed_time") + 3599){
			drawstring(155, 120, 4, "1");
		}if (time >= getglobalvar("elapsed_time") + 3600){
			drawstring(155, 120, 4, "0");
		}if (time >= getglobalvar("elapsed_time") + 4200){
			jumptobranch("end", 1);
		}
	}
	}
}

void main()
{//msmalik681 random++ script.

    if(openborvariant("in_menuscreen")==1) //confirm you are in menu.
	{
		int seed; //initialize seed.
		If(seed==NULL()){seed=1;} //start it off.
		Seed++; //increment seed.
		srand(seed); //apply seed to random function.
	}
}

blast, i wanted to use SOR 2X for reference to fix this, but ir emoved it from this machine & am really not sure what the latest streets of rage 2 download is, i see this on this thread that the Kratus blogspot page is down & see bunch of different links if googled- the one i donwloaded a year ago was fro a video on youtube

 
this is the way i was adding Kratu's variation:
Code:
void main(){
	void vSelf = getplayerproperty(0, "entity");
	int r = getentityproperty(vSelf, "rush_count");
	void vAniPos = getentityproperty(vSelf, "animpos");
	void vAniID = getentityproperty(vSelf,"animationID");
	void iUp = playerkeys(0, 0, "moveup");
	void iDown = playerkeys(0, 0, "movedown");
	void iLeft = playerkeys(0, 0, "moveleft");
	void iRight = playerkeys(0, 0, "moveright");
	void iAttack = playerkeys(0, 0, "attack");
	void vSelf2 = getplayerproperty(1, "entity");
	int r2 = getentityproperty(vSelf2, "rush_count");
	void vAniID2 = getentityproperty(vSelf2,"animationID");
	void vAniPos2 = getentityproperty(vSelf2, "animpos");
	void iUp2 = playerkeys(1, 0, "moveup");
	void iDown2 = playerkeys(1, 0, "movedown");
	void iLeft2 = playerkeys(1, 0, "moveleft");
	void iRight2 = playerkeys(1, 0, "moveright");
	void iAttack2 = playerkeys(1, 0, "attack");
	int time = openborvariant("elapsed_time");
	if (vAniID == openborconstant("ANI_RISE")){
		if (vAniPos == 0){
			if (iUp){ 
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL6")); 
			}else if (iDown){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL5")); 
			}else if (iLeft){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8")); 
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}
			}else if (iAttack){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FOLLOW10"));               
			}    
		}
	}
	if (vAniID2 == openborconstant("ANI_RISE")){
		if (vAniPos2 == 0){
			if (iUp2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL6")); 
			}else if (iDown2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL5")); 
			}else if (iLeft2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8")); 
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7")); 
				}
			}else if (iAttack2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FOLLOW10"));
			}
		}
	}
	if (vAniID == openborconstant("ANI_FOLLOW4")){
		drawstring(21, 60, 4, "Counter");
	}if (vAniID == openborconstant("ANI_FREESPECIAL39")){
		drawstring(21, 60, 4, "Recover");
	}if (vAniID2 == openborconstant("ANI_FOLLOW4")){
		drawstring(255, 60, 4, "Counter");
	}if (vAniID2 == openborconstant("ANI_FREESPECIAL39")){
		drawstring(255, 60, 4, "Recover");
	}if (vAniID == openborconstant("ANI_FOLLOW10")){
		drawstring(21, 60, 4, "SlashBack");
	}if (vAniID2 == openborconstant("ANI_FOLLOW10")){
		drawstring(225, 60, 4, "SlashBack");
	}if(r >= 4  && r <= 5){
		drawstring(21, 60, 3, "good");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 6 && r <= 7){
		drawstring(21, 60, 3, "great");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r == 8 && r <= 9){
		drawstring(21, 60, 3, "super");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 10 && r <= 14){
		drawstring(21, 60, 4, "killer");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 15 && r <= 19){
		drawstring(21, 60, 4, "butcher");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 20){
		drawstring(21, 60, 4, "Slasher");
		drawstring(21, 80, 1, "Bonus_"+75*r);
	}if(r2 >= 4 && r2 <= 5){
		drawstring(255, 60, 3, "good");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 6 && r2 <= 7){
		drawstring(255, 60, 3, "great");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 8 && r2 <= 9){
		drawstring(255, 60, 3, "super");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 10 && r <= 14){
		drawstring(255, 60, 4, "killer");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 15 && r <= 19){
		drawstring(255, 60, 4, "butcher");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 20){
		drawstring(255, 60, 4, "slasher");
		drawstring(250, 80, 1, "Bonus_"+75*r2);
	}if (vSelf == NULL() && vSelf2 == NULL()){
		if (getglobalvar("crd") >= 1 || getglobalvar("crd2") >= 1 || getglobalvar("crd3") >= 1 || getglobalvar("crd4") >= 1){
			drawstring(125, 100, 4, "continue");
		if (time >= getglobalvar("elapsed_time") + 600 && time <= getglobalvar("elapsed_time") + 999){
			drawstring(155, 120, 3, "9");
		}if (time >= getglobalvar("elapsed_time") + 1000 && time <= getglobalvar("elapsed_time") + 1399){
			drawstring(155, 120, 3, "8");
		}if (time >= getglobalvar("elapsed_time") + 1400 && time <= getglobalvar("elapsed_time") + 1799){
			drawstring(155, 120, 3, "7");
		}if (time >= getglobalvar("elapsed_time") + 1800 && time <= getglobalvar("elapsed_time") + 2099){
			drawstring(155, 120, 3, "6");
		}if (time >= getglobalvar("elapsed_time") + 2100 && time <= getglobalvar("elapsed_time") + 2399){
			drawstring(155, 120, 3, "5");
		}if (time >= getglobalvar("elapsed_time") + 2400 && time <= getglobalvar("elapsed_time") + 2699){
			drawstring(155, 120, 3, "4");
		}if (time >= getglobalvar("elapsed_time") + 2700 && time <= getglobalvar("elapsed_time") + 2999){
			drawstring(155, 120, 4, "3");
		}if (time >= getglobalvar("elapsed_time") + 3000 && time <= getglobalvar("elapsed_time") + 3299){
			drawstring(155, 120, 4, "2");
		}if (time >= getglobalvar("elapsed_time") + 3300 && time <= getglobalvar("elapsed_time") + 3599){
			drawstring(155, 120, 4, "1");
		}if (time >= getglobalvar("elapsed_time") + 3600){
			drawstring(155, 120, 4, "0");
		}if (time >= getglobalvar("elapsed_time") + 4200){
			jumptobranch("end", 1);
		}
	}
	}
}

void randomSeed()
{//Thanks to msmalik681 RANDOM++ SCRIPT
	
	if(getlocalvar("seed") == NULL()){
		float seed; //INITIALIZE SEED.
		
		if(seed == NULL()){seed = 1;} //START IT OFF
		
		seed++; //INCREMENT SEED
		srand(seed); //APPLY SEED TO RANDOM FUNCTION
		setlocalvar("seed", 1);
	}
}

this previous one crashes, this one does not, but it does not seem to have any effect
 
msmalik681 said:
oldyz  Just like kratus said use my original script it should work just fine for you. Did you remember to add alwaysupdate 1 ? And my script should be saved in updated.c or update.c in the scripts folder.
Yes, i did.

i see that your script has this void main()

i wonder if this is making the crash.
I am checking out Kratu's SOR2 mod, & i cant really understand how he integrated it...

i tried importing the script, i see this on the log:

Script error: data/scripts/randomseedplus.c, line 7: Invalid function call or expression '{' (in production 'postfix_expr2')

If(seed==NULL()){seed=1;} //start it off.
                        ^



Script error: data/scripts/randomseedplus.c, line 11: Invalid external declaration '}' (in production 'external_decl')

}
^

Script error: failed to import 'data/scripts/randomseedplus.c': parsing failed
 
Try this.

Code:
void main(){
       randomise();
	void vSelf = getplayerproperty(0, "entity");
	int r = getentityproperty(vSelf, "rush_count");
	void vAniPos = getentityproperty(vSelf, "animpos");
	void vAniID = getentityproperty(vSelf,"animationID");
	void iUp = playerkeys(0, 0, "moveup");
	void iDown = playerkeys(0, 0, "movedown");
	void iLeft = playerkeys(0, 0, "moveleft");
	void iRight = playerkeys(0, 0, "moveright");
	void iAttack = playerkeys(0, 0, "attack");
	void vSelf2 = getplayerproperty(1, "entity");
	int r2 = getentityproperty(vSelf2, "rush_count");
	void vAniID2 = getentityproperty(vSelf2,"animationID");
	void vAniPos2 = getentityproperty(vSelf2, "animpos");
	void iUp2 = playerkeys(1, 0, "moveup");
	void iDown2 = playerkeys(1, 0, "movedown");
	void iLeft2 = playerkeys(1, 0, "moveleft");
	void iRight2 = playerkeys(1, 0, "moveright");
	void iAttack2 = playerkeys(1, 0, "attack");
	int time = openborvariant("elapsed_time");
	if (vAniID == openborconstant("ANI_RISE")){
		if (vAniPos == 0){
			if (iUp){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL6"));
			}else if (iDown){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL5"));
			}else if (iLeft){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7"));
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7"));
				}
			}else if (iAttack){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FOLLOW10"));               
			}   
		}
	}
	if (vAniID2 == openborconstant("ANI_RISE")){
		if (vAniPos2 == 0){
			if (iUp2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL6"));
			}else if (iDown2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL5"));
			}else if (iLeft2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7"));
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7"));
				}
			}else if (iAttack2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FOLLOW10"));
			}
		}
	}
	if (vAniID == openborconstant("ANI_FOLLOW4")){
		drawstring(21, 60, 4, "Counter");
	}if (vAniID == openborconstant("ANI_FREESPECIAL39")){
		drawstring(21, 60, 4, "Recover");
	}if (vAniID2 == openborconstant("ANI_FOLLOW4")){
		drawstring(255, 60, 4, "Counter");
	}if (vAniID2 == openborconstant("ANI_FREESPECIAL39")){
		drawstring(255, 60, 4, "Recover");
	}if (vAniID == openborconstant("ANI_FOLLOW10")){
		drawstring(21, 60, 4, "SlashBack");
	}if (vAniID2 == openborconstant("ANI_FOLLOW10")){
		drawstring(225, 60, 4, "SlashBack");
	}if(r >= 4  && r <= 5){
		drawstring(21, 60, 3, "good");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 6 && r <= 7){
		drawstring(21, 60, 3, "great");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r == 8 && r <= 9){
		drawstring(21, 60, 3, "super");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 10 && r <= 14){
		drawstring(21, 60, 4, "killer");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 15 && r <= 19){
		drawstring(21, 60, 4, "butcher");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 20){
		drawstring(21, 60, 4, "Slasher");
		drawstring(21, 80, 1, "Bonus_"+75*r);
	}if(r2 >= 4 && r2 <= 5){
		drawstring(255, 60, 3, "good");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 6 && r2 <= 7){
		drawstring(255, 60, 3, "great");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 8 && r2 <= 9){
		drawstring(255, 60, 3, "super");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 10 && r <= 14){
		drawstring(255, 60, 4, "killer");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 15 && r <= 19){
		drawstring(255, 60, 4, "butcher");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 20){
		drawstring(255, 60, 4, "slasher");
		drawstring(250, 80, 1, "Bonus_"+75*r2);
	}if (vSelf == NULL() && vSelf2 == NULL()){
		if (getglobalvar("crd") >= 1 || getglobalvar("crd2") >= 1 || getglobalvar("crd3") >= 1 || getglobalvar("crd4") >= 1){
			drawstring(125, 100, 4, "continue");
		if (time >= getglobalvar("elapsed_time") + 600 && time <= getglobalvar("elapsed_time") + 999){
			drawstring(155, 120, 3, "9");
		}if (time >= getglobalvar("elapsed_time") + 1000 && time <= getglobalvar("elapsed_time") + 1399){
			drawstring(155, 120, 3, "8");
		}if (time >= getglobalvar("elapsed_time") + 1400 && time <= getglobalvar("elapsed_time") + 1799){
			drawstring(155, 120, 3, "7");
		}if (time >= getglobalvar("elapsed_time") + 1800 && time <= getglobalvar("elapsed_time") + 2099){
			drawstring(155, 120, 3, "6");
		}if (time >= getglobalvar("elapsed_time") + 2100 && time <= getglobalvar("elapsed_time") + 2399){
			drawstring(155, 120, 3, "5");
		}if (time >= getglobalvar("elapsed_time") + 2400 && time <= getglobalvar("elapsed_time") + 2699){
			drawstring(155, 120, 3, "4");
		}if (time >= getglobalvar("elapsed_time") + 2700 && time <= getglobalvar("elapsed_time") + 2999){
			drawstring(155, 120, 4, "3");
		}if (time >= getglobalvar("elapsed_time") + 3000 && time <= getglobalvar("elapsed_time") + 3299){
			drawstring(155, 120, 4, "2");
		}if (time >= getglobalvar("elapsed_time") + 3300 && time <= getglobalvar("elapsed_time") + 3599){
			drawstring(155, 120, 4, "1");
		}if (time >= getglobalvar("elapsed_time") + 3600){
			drawstring(155, 120, 4, "0");
		}if (time >= getglobalvar("elapsed_time") + 4200){
			jumptobranch("end", 1);
		}
	}
	}
}

void randomise()
{//msmalik681 random++ script.

    if(openborvariant("in_menuscreen")==1) //confirm you are in menu.
	{
		int seed; //initialize seed.
		If(seed==NULL()){seed=1;} //start it off.
		Seed++; //increment seed.
		srand(seed); //apply seed to random function.
	}
}
 
msmalik681

the script you posted did not work, it had some errors -

it needed to have some spaces & the "S" was not supposed to be capitalized - i am posting the corrected script here :

void randomise()
{//msmalik681 random++ script.

    if(openborvariant("in_menuscreen") == 1) //confirm you are in menu.
{
int seed; //initialize seed.
if(seed == NULL()){seed = 1;} //START IT OFF
seed++; //increment seed.
srand(seed); //apply seed to random function.
}
}

big note
this randomiser script does not work using the #import method

it has to be used like this:

Code:
void main(){
       randomise();
	void vSelf = getplayerproperty(0, "entity");
	int r = getentityproperty(vSelf, "rush_count");
	void vAniPos = getentityproperty(vSelf, "animpos");
	void vAniID = getentityproperty(vSelf,"animationID");
	void iUp = playerkeys(0, 0, "moveup");
	void iDown = playerkeys(0, 0, "movedown");
	void iLeft = playerkeys(0, 0, "moveleft");
	void iRight = playerkeys(0, 0, "moveright");
	void iAttack = playerkeys(0, 0, "attack");
	void vSelf2 = getplayerproperty(1, "entity");
	int r2 = getentityproperty(vSelf2, "rush_count");
	void vAniID2 = getentityproperty(vSelf2,"animationID");
	void vAniPos2 = getentityproperty(vSelf2, "animpos");
	void iUp2 = playerkeys(1, 0, "moveup");
	void iDown2 = playerkeys(1, 0, "movedown");
	void iLeft2 = playerkeys(1, 0, "moveleft");
	void iRight2 = playerkeys(1, 0, "moveright");
	void iAttack2 = playerkeys(1, 0, "attack");
	int time = openborvariant("elapsed_time");
	if (vAniID == openborconstant("ANI_RISE")){
		if (vAniPos == 0){
			if (iUp){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL6"));
			}else if (iDown){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL5"));
			}else if (iLeft){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7"));
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight){
				if (getentityproperty(vSelf,"direction"))
				{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL8"));
				}else{
					changeentityproperty(vSelf, "animation", openborconstant("ANI_FREESPECIAL7"));
				}
			}else if (iAttack){
				changeentityproperty(vSelf, "animation", openborconstant("ANI_FOLLOW10"));               
			}   
		}
	}
	if (vAniID2 == openborconstant("ANI_RISE")){
		if (vAniPos2 == 0){
			if (iUp2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL6"));
			}else if (iDown2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL5"));
			}else if (iLeft2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7"));
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}
			}else if (iRight2){
				if (getentityproperty(vSelf2,"direction")){
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL8"));
				}else{
					changeentityproperty(vSelf2, "animation", openborconstant("ANI_FREESPECIAL7"));
				}
			}else if (iAttack2){
				changeentityproperty(vSelf2, "animation", openborconstant("ANI_FOLLOW10"));
			}
		}
	}
	if (vAniID == openborconstant("ANI_FOLLOW4")){
		drawstring(21, 60, 4, "Counter");
	}if (vAniID == openborconstant("ANI_FREESPECIAL39")){
		drawstring(21, 60, 4, "Recover");
	}if (vAniID2 == openborconstant("ANI_FOLLOW4")){
		drawstring(255, 60, 4, "Counter");
	}if (vAniID2 == openborconstant("ANI_FREESPECIAL39")){
		drawstring(255, 60, 4, "Recover");
	}if (vAniID == openborconstant("ANI_FOLLOW10")){
		drawstring(21, 60, 4, "SlashBack");
	}if (vAniID2 == openborconstant("ANI_FOLLOW10")){
		drawstring(225, 60, 4, "SlashBack");
	}if(r >= 4  && r <= 5){
		drawstring(21, 60, 3, "good");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 6 && r <= 7){
		drawstring(21, 60, 3, "great");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r == 8 && r <= 9){
		drawstring(21, 60, 3, "super");
		drawstring(21, 80, 1, "Bonus_"+25*r);
	}if(r >= 10 && r <= 14){
		drawstring(21, 60, 4, "killer");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 15 && r <= 19){
		drawstring(21, 60, 4, "butcher");
		drawstring(21, 80, 1, "Bonus_"+50*r);
	}if(r >= 20){
		drawstring(21, 60, 4, "Slasher");
		drawstring(21, 80, 1, "Bonus_"+75*r);
	}if(r2 >= 4 && r2 <= 5){
		drawstring(255, 60, 3, "good");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 6 && r2 <= 7){
		drawstring(255, 60, 3, "great");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 8 && r2 <= 9){
		drawstring(255, 60, 3, "super");
		drawstring(255, 80, 1, "Bonus_"+25*r2);
	}if(r2 >= 10 && r <= 14){
		drawstring(255, 60, 4, "killer");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 15 && r <= 19){
		drawstring(255, 60, 4, "butcher");
		drawstring(250, 80, 1, "Bonus_"+50*r2);
	}if(r2 >= 20){
		drawstring(255, 60, 4, "slasher");
		drawstring(250, 80, 1, "Bonus_"+75*r2);
	}if (vSelf == NULL() && vSelf2 == NULL()){
		if (getglobalvar("crd") >= 1 || getglobalvar("crd2") >= 1 || getglobalvar("crd3") >= 1 || getglobalvar("crd4") >= 1){
			drawstring(125, 100, 4, "continue");
		if (time >= getglobalvar("elapsed_time") + 600 && time <= getglobalvar("elapsed_time") + 999){
			drawstring(155, 120, 3, "9");
		}if (time >= getglobalvar("elapsed_time") + 1000 && time <= getglobalvar("elapsed_time") + 1399){
			drawstring(155, 120, 3, "8");
		}if (time >= getglobalvar("elapsed_time") + 1400 && time <= getglobalvar("elapsed_time") + 1799){
			drawstring(155, 120, 3, "7");
		}if (time >= getglobalvar("elapsed_time") + 1800 && time <= getglobalvar("elapsed_time") + 2099){
			drawstring(155, 120, 3, "6");
		}if (time >= getglobalvar("elapsed_time") + 2100 && time <= getglobalvar("elapsed_time") + 2399){
			drawstring(155, 120, 3, "5");
		}if (time >= getglobalvar("elapsed_time") + 2400 && time <= getglobalvar("elapsed_time") + 2699){
			drawstring(155, 120, 3, "4");
		}if (time >= getglobalvar("elapsed_time") + 2700 && time <= getglobalvar("elapsed_time") + 2999){
			drawstring(155, 120, 4, "3");
		}if (time >= getglobalvar("elapsed_time") + 3000 && time <= getglobalvar("elapsed_time") + 3299){
			drawstring(155, 120, 4, "2");
		}if (time >= getglobalvar("elapsed_time") + 3300 && time <= getglobalvar("elapsed_time") + 3599){
			drawstring(155, 120, 4, "1");
		}if (time >= getglobalvar("elapsed_time") + 3600){
			drawstring(155, 120, 4, "0");
		}if (time >= getglobalvar("elapsed_time") + 4200){
			jumptobranch("end", 1);
		}
	}
	}
}

void randomise()
{//msmalik681 random++ script.

    if(openborvariant("in_menuscreen") == 1) //confirm you are in menu.
	{
		int seed; //initialize seed.
		if(seed == NULL()){seed = 1;} //START IT OFF
		seed++; //increment seed.
		srand(seed); //apply seed to random function.
	}
}
 
oldyz

i see this on this thread that the Kratus blogspot page is down & see bunch of different links if googled

Strange, I don't know what link you tried but the blog is working fine.
https://fgames9000.blogspot.com/

You can download the latest release here:
https://1drv.ms/u/s!AnTXKPMHlONnhNRY2xHFdLO7X39WQw?e=vQiUJq

this randomiser script does not work using the #import method
Hmm, something is wrong, currently I'm using it by the #import method.
You can confirm it in SOR2X by searching for the "randomSeed" function in the updated.c

EDIT:
Currently I'm importing the script like this:
Code:
#import "data/scripts/updated/main_misc.c"
 
Kratus

it seems that the first post in the SOR 2X does not feature the new log website, & since the author Adam Hunter is who made the topic & not your current account, i can see why it was never updated - even the video on that first post points to the old website (in my end it says its not available)

i found it tho & now with the new information i can see now.

i will mark this problem solved, thank you guys
but it is weird, on my module the random seed only seems to work with direct integration - so i am letting that sleeping dog lie for now.

 
Sorry man, now I remember that my first blog is down. I changed the old address from kratusgames to fgames9000
It's good to know that the script worked :)
 
msmalik681
noted, i am curious, which of you modules features the original script you posted back then?
beacause the only way i was able to detect the mistakes was thanks to the #import method & Kratu's variations.
direct integration would not yield anything on the log, the engine just would not start
 
Back
Top Bottom