No matter what i do I always get Login.dm:183:error:base_Initialize:undefined proc even if its a game that worked fine on another computer, or one that i just Downloaded,a lways Login.dm:183:error:base_Initialize:undefined proc
.> <.< e.e v_v
ID:147750
Dec 24 2003, 11:04 am
|
|
No matter what i do I always get Login.dm:183:error:base_Initialize:undefined proc even if its a game that worked fine on another computer, or one that i just Downloaded,a lways Login.dm:183:error:base_Initialize:undefined proc .> <.< e.e v_v |
In response to Deadron
|
|
Deadron wrote:
Download this: I downloaded it but i still get the error... My login coding is.. //////////////////////////// // DON'T TOUCH THIS FILE! // //////////////////////////// /* Unless you are a BYOND guru who is curious how this works, there is no point in reading this file. It's just the gritty code, and you NEVER need to touch it or even read it. See characterhandling.dm for full library documentation. If you touch this file and then your character saving breaks, don't bug me about it, it's not my problem. */ #define DEBUG #include <deadron/basecamp> #define BASE_MENU_CREATE_CHARACTER "Create New Character" #define BASE_MENU_DELETE_CHARACTER "Delete Character" #define BASE_MENU_CANCEL "Cancel" #define BASE_MENU_QUIT "Quit" // Implementation client/var/tmp base_num_characters_allowed = 3 base_autoload_character = 0 base_autosave_character = 1 base_autodelete_mob = 1 base_save_verbs = 1 mob var/tmp base_save_allowed = 1 // Is this mob allowed to be saved? base_save_location = 1 // Should the mob's location be saved and restored? var/list/base_saved_verbs // If we're saving verbs they are stored here. proc/base_InitFromSavefile() return Write(savefile/F) // Save the location if that has been specified and there is a map. // First, call the default Write() behavior for mobs. ..() if (base_save_location && world.maxx) F["last_x"] << x F["last_y"] << y F["last_z"] << z return Read(savefile/F) // Restore the mob's location if that has been specified and there is a map. // This doesn't do anything special if the mob movement fails. // Call the default Read() behavior for mobs. ..() if (base_save_location && world.maxx) var/last_x var/last_y var/last_z F["last_x"] >> last_x F["last_y"] >> last_y F["last_z"] >> last_z var/destination = locate(last_x, last_y, last_z) Move(destination) return mob/BaseCamp base_save_allowed = 0 // BaseCamp mobs are for admin only. Login() RemoveVerbs() // Don't use any other Login() code. return Stat() // Don't want any stat panels for BaseCamp mobs. return Logout() // Don't use any other Logout() code. return proc/RemoveVerbs() for (var/my_verb in verbs) verbs -= my_verb mob/BaseCamp/FirstTimePlayer proc/FirstTimePlayer() // Here in case developer wants to do something first time a player ever logs in. return 1 mob/BaseCamp/ChoosingCharacter Login() // spawn to make sure all administrative tasks are over. spawn() ChooseCharacter() return ..() proc/ChooseCharacter() var/list/available_char_names = client.base_CharacterNames() var/list/menu = new() menu += available_char_names if (length(available_char_names) < client.base_num_characters_allowed) if (client.base_num_characters_allowed == 1) // If only one character allowed, jump right to creating character. client.base_NewMob() del(src) return else menu += BASE_MENU_CREATE_CHARACTER if (length(available_char_names)) menu += BASE_MENU_DELETE_CHARACTER menu += BASE_MENU_QUIT var/default = null var/result = input(src, "Who do you want to be today?", "Welcome to [world.name]!", default) in menu switch(result) if (0, BASE_MENU_QUIT) // Kick them off. del(src) return if (BASE_MENU_CREATE_CHARACTER) client.base_NewMob() del(src) return if (BASE_MENU_DELETE_CHARACTER) // Give them a chance to delete something, but then they need to choose. DeleteCharacter() ChooseCharacter() return // They must have chosen a character, so load it. var/mob/Mob = client.base_LoadMob(result) if (Mob) del(src) else ChooseCharacter() proc/DeleteCharacter() var/list/available_char_names = client.base_CharacterNames() var/list/menu = new() menu += available_char_names menu += BASE_MENU_CANCEL menu += BASE_MENU_QUIT var/default = null var/result = input(src, "Which character do you want to delete?", "Deleting character", default) in menu switch(result) if (0, BASE_MENU_QUIT) // Kick them off. del(src) return if (BASE_MENU_CANCEL) return // They chose a character to delete. client.base_DeleteMob(result) ChooseCharacter() return client var/tmp/savefile/_base_player_savefile New() // Let them choose/create a character. if (base_autoload_character) base_ChooseCharacter() base_Initialize() return return ..() Del() if (base_autosave_character) base_SaveMob() // Delete mob. if (base_autodelete_mob) del(mob) return ..() proc/base_PlayerSavefile() if (!_base_player_savefile) // Put in players/[first_initial]/[ckey].sav var/start = 1 var/end = 2 var/first_initial = copytext(ckey, start, end) var/filename = "players/[first_initial]/[ckey].sav" _base_player_savefile = new(filename) return _base_player_savefile proc/base_FirstTimePlayer() var/mob/BaseCamp/FirstTimePlayer/first_mob = new() first_mob.name = key first_mob.gender = gender mob = first_mob return first_mob.FirstTimePlayer() proc/base_ChooseCharacter() // Switches the player to a choosing character mob. // In case switching in middle of game, save previous mob. base_SaveMob() var/mob/BaseCamp/ChoosingCharacter/chooser // Do they have any characters to choose from? var/list/names = base_CharacterNames() if (!length(names)) // They must be a first time player. var/result = base_FirstTimePlayer() if (!result) // They weren't approved, so boot 'em. del(src) return // Okay let them create their first character. chooser = new() mob = chooser return // If only one character is allowed, try to just load it. if (base_num_characters_allowed == 1) base_LoadMob(names[1]) return chooser = new() mob = chooser return proc/base_CharacterNames() // Get the full names of all this player's characters. var/list/names = new() var/savefile/F = base_PlayerSavefile() F.cd = "/players/[ckey]/mobs/" var/list/characters = F.dir var/char_name for (var/entry in characters) F["[entry]/name"] >> char_name names += char_name return names proc/base_NewMob() var/T = input("Now, choose an RP appropriate name.","Name",key) as text|null if(T == "") world << "\cyan [key] tryed to log on with a key, but has been booted." del(src) for(var/mob/players/M in world) if(T == M.name) mob << "\cyan Name already taken." base_NewMob() break if(lentext(T) > 20) src << "\cyan Name is too long. It needs to be less than 20 characters" base_NewMob() var/list/element = list("Fire","Water","Air","Earth") var/list/gen = list("Male","Female") var/mob/new_mob var/ele = input("What element do you hail from?","Element")in element var/g = input("What gender are you?","Gender")in gen if(ele == "Fire") new_mob = new/mob/players/RedSlime() if(g == "Male") new_mob.Spells.Add("Flame Swing") if(g == "Female") new_mob.Spells.Add("Flame") if(ele == "Water") new_mob = new/mob/players/BlueSlime() if(g == "Male") new_mob.Spells.Add("Refresh") if(g == "Female") new_mob.Spells.Add("Drizzle") if(ele == "Air") new_mob = new/mob/players/MetalSlime() if(g == "Male") new_mob.Spells.Add("Gale") if(g == "Female") new_mob.Spells.Add("Gust") if(ele == "Earth") new_mob = new/mob/players/GreenSlime() if(g == "Male") new_mob.Spells.Add("Orb Poison Swing") if(g == "Female") new_mob.Spells.Add("Antidote") new_mob.gend = g new_mob.name="[html_encode(T)]" base_SaveMob() mob = new_mob // new_mob.base_Initialize() // Clear out the savefile to keep it from staying open. _base_player_savefile = null return new_mob proc/base_SaveMob() // Saves the player's current mob based on the ckey of its name. if (!mob || !mob.base_save_allowed) return // If we're saving verbs, move them over now. if (base_save_verbs) mob.base_saved_verbs = mob.verbs var/savefile/F = base_PlayerSavefile() var/mob_ckey = ckey(mob.name) var/directory = "/players/[ckey]/mobs/[mob_ckey]" F.cd = directory F["name"] << mob.name F["mob"] << mob _base_player_savefile = null proc/base_LoadMob(char_name) // Look for a character with the ckey version of this name. // If found, load it, set the client mob to it, and return it. // Otherwise return null. var/mob/new_mob var/char_ckey = ckey(char_name) var/savefile/F = base_PlayerSavefile() _base_player_savefile = null F.cd = "/players/[ckey]/mobs/" var/list/characters = F.dir if (!characters.Find(char_ckey)) world.log << "[key]'s client.LoadCharacter() could not locate character [char_name]." mob << "Unable to load [char_name]." return null F["[char_ckey]/mob"] >> new_mob if (new_mob) mob = new_mob new_mob.base_InitFromSavefile() // If we're doing verbs, set them now. if (base_save_verbs && new_mob.base_saved_verbs) for (var/item in new_mob.base_saved_verbs) new_mob.verbs += item return new_mob return null proc/base_DeleteMob(char_name) // Look for a character with the ckey version of this name. // If found, delete it. var/char_ckey = ckey(char_name) var/savefile/F = base_PlayerSavefile() F.cd = "/players/[ckey]/mobs/" F.dir.Remove(char_ckey) and the error is found at... New() // Let them choose/create a character. if (base_autoload_character) base_ChooseCharacter() base_Initialize() return return ..() |
In response to Newen
|
|
NM!!!
The base camp i downladed was naked no code at all!! SO went to my brothers cpu and lloked at his and there was code@! SO i had him send me his copy of it!! FOr anyone else who has this prob!! //////////////////////////////////////////////// // BaseCamp: From here you can reach Everest! // //////////////////////////////////////////////// // BaseCamp is Deadron's set of libraries providing // core game functionality. // // This library is used by the other BaseCamp libraries // for items in common between the libraries. // It doesn't do anything interesting in itself. /* Global GameController variable ------------------------------ This is where the global GameController is stored. You can access it from anywhere in your code: GameController.cycle_delay = 3 */ var/BaseCamp/GameController/GameController // The rest of this is used by various BaseCamp libraries. // You don't need to touch any of it. world New() var/result = ..() if (!GameController) GameController = new() return result BaseCamp/GameController // Runs the game event loop. var/tmp name = "GameController" initialized = 0 proc Initialize() initialized = 1 return Write() // GlobalMessage("\red BaseCamp: Illegal attempt to write GameController to savefile!") world.log << "BaseCamp: Illegal attempt to write GameController to savefile!" return client var/tmp/base_initialized = 0 New() var/result = ..() base_Initialize() return result proc/base_Initialize() base_initialized = 1 return YAY!!! |
Download this:
http://www.byond.com/hub/Deadron.BaseCamp