wc3edit.net

United Warcraft 3 map hacking!
It is currently September 22nd, 2019, 3:38 am

All times are UTC




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Enabling Singleplayer
PostPosted: May 26th, 2007, 12:30 pm 
Offline
Member
User avatar

Joined: May 11th, 2007, 6:14 pm
Posts: 86
Hey!
I'd like very much to learn how to enable singleplayer in an ORPG map like Defi4nc3 ORPG or Master crafters. I know those maps have already been cheated, but I want to learn how I can do it myself so I can help other people too.
What aproach should I take? Tutorial somewhere?
Thanks in advance to anyone willing to help.


Last edited by DeadlyLegion on May 26th, 2007, 12:32 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: May 26th, 2007, 12:31 pm 
Offline
Honorary wc3edit.net Traitor
User avatar

Joined: February 1st, 2007, 4:11 pm
Posts: 2513
Location: NEVADA
I plan to write a tutorial for this in the near future - but as it is different on just about every rpg it seems, its sorta hard to! =/


Top
 Profile  
 
 Post subject:
PostPosted: May 26th, 2007, 4:12 pm 
Offline
Old Wrinkly Member

Joined: March 2nd, 2007, 5:52 pm
Posts: 238
Location: USA
Xantan wrote:
I plan to write a tutorial for this in the near future - but as it is different on just about every rpg it seems, its sorta hard to! =/

just write a tutorial for several different famous ones and once a month or so u can add a new one =D


Top
 Profile  
 
 Post subject:
PostPosted: May 26th, 2007, 5:41 pm 
Offline
Member
User avatar

Joined: May 11th, 2007, 6:14 pm
Posts: 86
I mean just a general... tip... on what to do - I have no idea where to begin. Do I break something in the Jass or should I deprotect map and then add some misc. trigger?


Top
 Profile  
 
 Post subject:
PostPosted: May 26th, 2007, 5:47 pm 
Offline
Old Wrinkly Member

Joined: March 2nd, 2007, 5:52 pm
Posts: 238
Location: USA
DeadlyLegion wrote:
I mean just a general... tip... on what to do - I have no idea where to begin. Do I break something in the Jass or should I deprotect map and then add some misc. trigger?


this is usualy what i do for some maps in singleplayer

play the game non-hacked in singleplayer and when it says u cannot save because of whatever thats what ur gonna search for in Jasscraft just go to search and type in that message

look for any relation to another trigger that may have somtin to do with playing alone if u notice that this trigger is the trigger that wont let u play in singleplayer then u just have to figure out what to do

usualy for alot of maps i cheat its sorta like this

Code:
function bla bla bla takes nothing returns nothing boolean
if bla bla bla then
return false
endif
return true



Code:
function bla bla bla takes nothing returns nothing boolean
if bla bla bla then
return false <---
endif
return true <----


i usualy switch these =D and thats a solution for some maps

so

Code:
function bla bla bla takes nothing returns nothing boolean
if bla bla bla then
return true
endif
return false


this doesnt always work but its how i did singleplayer for FFF 1c and everquest 3.5 the uncharted lands xD
not to mention some maps may do it differently and i dunno how defiance does it but this is the one ive seen more then any others

btw another way to try to find the no singleplayer thing is to start by typing single, singleplayer, single player, or save into the search box


Top
 Profile  
 
 Post subject:
PostPosted: May 29th, 2007, 4:02 pm 
Offline
Member
User avatar

Joined: May 11th, 2007, 6:14 pm
Posts: 86
so it's basically just alot of trial and error?

Where is it... that string of jass? Is it under function main or after endglobals?


Top
 Profile  
 
 Post subject:
PostPosted: June 6th, 2007, 8:22 pm 
Offline
V.I.P.
User avatar

Joined: March 4th, 2007, 12:39 am
Posts: 332
Location: United States
Heh, all I do is just Cntrl-F in JASSCraft, and search for 'save'.

Browse through stuff, heres an example:
(Dawn of the Dead 5.2F)

Code:
boolean array udg_SaveAllowed
trigger gg_trg_Save=null


Code:
function Trig_Save_Func003C takes nothing returns boolean
if(not (udg_SaveAllowed[GetConvertedPlayerId(GetTriggerPlayer())]==false))then
return false
endif
return true
endfunction


Just look for those kind of functions, and usually when you switch the boolean value, it works!

Also you might stumble upon the saves allowed..

Code:
function Trig_Save_Func002C takes nothing returns boolean
if(not (udg_HasSaved[GetConvertedPlayerId(GetTriggerPlayer())]==true))then
return false
endif
return true
endfunction


Switch em' around and you can save as many times as you want.. I think!
I guess you could say it's trial+error..

And I think you have to change it where all the other functions are.. After endglobals..

Edit: Also see how Xantan put it.. he makes way more sense than I do..
http://forum.wc3edit.net/viewtopic.php?t=429


Top
 Profile  
 
 Post subject:
PostPosted: June 13th, 2007, 7:50 pm 
Offline
Newcomer

Joined: March 16th, 2007, 2:59 am
Posts: 22
WOW THAT REALLY HELPED!! thx!!! And if u guys played guantlet dark ends part 2, I found that the creator of the map made cheats!!! !!!! WOAH!! i can edit these for my name!!!!! want me to show u the cheats?

Code:
function InitTrig_Dark_End_Mask_of_Kial_Thul takes nothing returns nothing
set gg_trg_Dark_End_Mask_of_Kial_Thul = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(0), "K$LAF", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(1), "K$LAF", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(2), "K$LAF", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(3), "K$LAF", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(4), "K$LAF", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Mask_of_Kial_Thul, Player(5), "K$LAF", true )
call TriggerAddAction( gg_trg_Dark_End_Mask_of_Kial_Thul, function Trig_Dark_End_Mask_of_Kial_Thul_Actions )
endfunction
function Trig_Dark_End_Armageddon_Armor_Actions takes nothing returns nothing
call DisplayTextToForce( GetForceOfPlayer(GetTriggerPlayer()), "TRIGSTR_1671" )
call CreateItemLoc( 'rde0', GetRectCenter(gg_rct_TownArea) )
call UnitAddItemSwapped( GetLastCreatedItem(), udg_PlayerHeroArray[GetConvertedPlayerId(GetTriggerPlayer())] )
endfunction
function InitTrig_Dark_End_Armageddon_Armor takes nothing returns nothing
set gg_trg_Dark_End_Armageddon_Armor = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(0), "DarkEndZeroHour", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(1), "DarkEndZeroHour", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(2), "DarkEndZeroHour", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(3), "DarkEndZeroHour", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(4), "DarkEndZeroHour", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Armageddon_Armor, Player(5), "DarkEndZeroHour", true )
call TriggerAddAction( gg_trg_Dark_End_Armageddon_Armor, function Trig_Dark_End_Armageddon_Armor_Actions )
endfunction
function Trig_Dark_End_Destruction_Shield_Actions takes nothing returns nothing
call DisplayTextToForce( GetForceOfPlayer(GetTriggerPlayer()), "TRIGSTR_1672" )
call CreateItemLoc( 'I00G', GetRectCenter(gg_rct_TownArea) )
call UnitAddItemSwapped( GetLastCreatedItem(), udg_PlayerHeroArray[GetConvertedPlayerId(GetTriggerPlayer())] )
endfunction
function InitTrig_Dark_End_Destruction_Shield takes nothing returns nothing
set gg_trg_Dark_End_Destruction_Shield = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(0), "DAO5R3W", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(1), "DAO5R3W", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(2), "DAO5R3W", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(3), "DAO5R3W", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(4), "DAO5R3W", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Destruction_Shield, Player(5), "DAO5R3W", true )
call TriggerAddAction( gg_trg_Dark_End_Destruction_Shield, function Trig_Dark_End_Destruction_Shield_Actions )
endfunction
function Trig_Dark_End_Blood_Crown_Actions takes nothing returns nothing
call DisplayTextToForce( GetForceOfPlayer(GetTriggerPlayer()), "TRIGSTR_1673" )
call CreateItemLoc( 'I00F', GetRectCenter(gg_rct_TownArea) )
call UnitAddItemSwapped( GetLastCreatedItem(), udg_PlayerHeroArray[GetConvertedPlayerId(GetTriggerPlayer())] )
endfunction
function InitTrig_Dark_End_Blood_Crown takes nothing returns nothing
set gg_trg_Dark_End_Blood_Crown = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(0), "AOXLOC2", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(1), "AOXLOC2", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(2), "AOXLOC2", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(3), "AOXLOC2", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(4), "AOXLOC2", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Blood_Crown, Player(5), "AOXLOC2", true )
call TriggerAddAction( gg_trg_Dark_End_Blood_Crown, function Trig_Dark_End_Blood_Crown_Actions )
endfunction
function Trig_Dark_End_War_Ring_Actions takes nothing returns nothing
call DisplayTextToForce( GetForceOfPlayer(GetTriggerPlayer()), "TRIGSTR_1012" )
call CreateItemLoc( 'rde2', GetRectCenter(gg_rct_TownArea) )
call UnitAddItemSwapped( GetLastCreatedItem(), udg_PlayerHeroArray[GetConvertedPlayerId(GetTriggerPlayer())] )
endfunction
function InitTrig_Dark_End_War_Ring takes nothing returns nothing
set gg_trg_Dark_End_War_Ring = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(0), "UU3M9", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(1), "UU3M9", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(2), "UU3M9", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(3), "UU3M9", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(4), "UU3M9", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_War_Ring, Player(5), "UU3M9", true )
call TriggerAddAction( gg_trg_Dark_End_War_Ring, function Trig_Dark_End_War_Ring_Actions )
endfunction
function Trig_Dark_End_Battle_Drums_Actions takes nothing returns nothing
call DisplayTextToForce( GetForceOfPlayer(GetTriggerPlayer()), "TRIGSTR_1010" )
call CreateItemLoc( 'ward', GetRectCenter(gg_rct_TownArea) )
call UnitAddItemSwapped( GetLastCreatedItem(), udg_PlayerHeroArray[GetConvertedPlayerId(GetTriggerPlayer())] )
endfunction
function InitTrig_Dark_End_Battle_Drums takes nothing returns nothing
set gg_trg_Dark_End_Battle_Drums = CreateTrigger( )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(0), "589Z1", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(1), "589Z1", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(2), "589Z1", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(3), "589Z1", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(4), "589Z1", true )
call TriggerRegisterPlayerChatEvent( gg_trg_Dark_End_Battle_Drums, Player(5), "589Z1", true )
call TriggerAddAction( gg_trg_Dark_End_Battle_Drums, function Trig_Dark_End_Battle_Drums_Actions )
endfunction


Top
 Profile  
 
 Post subject:
PostPosted: June 13th, 2007, 11:11 pm 
Offline
Forum Staff
User avatar

Joined: June 3rd, 2007, 8:03 pm
Posts: 995
Here's some general tips on finding the no single.

Trigger disabled, this is when the game doesn't end but you can no longer save just look for disable trigger, make sure its the no single trig and do w/e you want to it.

Game Ends, easyest to find just look for customdefeat, make sure it's the rite one and then do w/e you want to it.

Disabled menus and all that good shit, I actually don't know the trigger for this so either get someone to tell you the jass for doing this so that you may find it or look for the no single thru fucntions with GetPlayerSlotState and GetPlayerController, and make sure what you found is indeedy the single and then do whatever you want to it.

Something thats not 1 of those 3, well then if the map hasnt had all the trigs, variables renamed see if you can't find something with a name pertaining to no single, if it has been renamed or you can't find anything try searching for the slotstate's and playercontrollers like in number3. Other wise try and figure out what the did and look for that. Like if they just remove your hero search for a unit remove trig.(though i dont think any maps implement this.) :)

Thats pretty much all the protection ever implemented in no Single that i've ever seen at least, it's sad I know. :(

Still can't find it? Then you don't have enough patience, or your just dumb, or I finally got off my lazy ass and made a map with all my protection skills. :P


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group

phpBB SEO


Privacy Policy Statement
Impressum (German)