Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Consulta con guardado de partida usando UDK

Iniciado por Netto22, 01 de Julio de 2013, 11:33:54 PM

« anterior - próximo »

Netto22

Bueno, ando liado con unos asuntillos y ando bloqueado queriendo hacer un sistema de guardado de partida a traves del tipico menu--> save game y que al cargar ubique las ultimas posiciones.

Tengo configurado ya nfringe para usarlo con visual studio 2010 pero lo unico que encuentro como documentacion es para salvar las posiciones de los objetos, no del jugador tambien.

Algun consejo?

[EX3]

Cita de: Netto22 en 01 de Julio de 2013, 11:33:54 PM
lo unico que encuentro como documentacion es para salvar las posiciones de los objetos, no del jugador tambien.
Pregunto, ¿El jugador no es otro objeto más de la escena?

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

Netto22

Llevo poco con udk xD pero parece que asi es xD.

No me dio por probar lo que encontraba porque se basaba siempre en escenarios sin juego y pequeños, fallo de mi por no ser curioso aqui... XD

[EX3]

#3
Tranquilo, si es la primera vez que usas un motor como UDK o Unity3D es normal fallos como estos, a mi por ejemplo en su dia me costo hacerme un poco a la filosofia de componentes de Unity3D :)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

Netto22

Bueno ahora tengo problemas al compilar.

[0001.10] Init: Version: 10900
[0001.10] Init: Epic Internal: 0
[0001.10] Init: Compiled (64-bit): Feb 18 2013 19:25:57
[0001.10] Init: Command line:
[0001.10] Init: Base directory: C:\UDK\UDK-2013-02\Binaries\Win64\
[0001.10] Init: Character set: Unicode
[0001.10] Log: Executing Class UnrealEd.MakeCommandlet
[0001.19] --------------------Core - Release--------------------
[0001.22] --------------------Engine - Release--------------------
[0002.25] --------------------IpDrv - Release--------------------
[0002.40] --------------------GFxUI - Release--------------------
[0002.44] --------------------GameFramework - Release--------------------
[0002.60] --------------------UnrealEd - Release--------------------
[0002.68] --------------------GFxUIEditor - Release--------------------
[0002.69] --------------------WinDrv - Release--------------------
[0002.70] --------------------OnlineSubsystemPC - Release--------------------
[0002.73] --------------------OnlineSubsystemSteamworks - Release--------------------
[0002.80] --------------------OnlineSubsystemGameCenter - Release--------------------
[0002.86] --------------------SubstanceAir - Release--------------------
[0002.86] --------------------SubstanceAirEd - Release--------------------
[0002.87] --------------------UDKBase - Release--------------------
[0003.00] --------------------UTEditor - Release--------------------
[0003.00] --------------------UTGame - Release--------------------
[0003.01] Analyzing...
[0003.42] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(41) : Warning, Class UTGame.SaveSystem can't bind to DLL C:\UDK\UDK-2013-02\Binaries\W
in64\UserCode\SaveSystem.DLL
[0004.48] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(37) : Error, Bad or missing expression in '='
[0004.48] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(29) : Error, Unknown member 'CharacterProperties' in struct 'SCharacterData'
[0006.11] Compile aborted due to errors.
[0006.13]
[0006.13] Warning/Error Summary
[0006.14] ---------------------
[0006.14] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(37) : Error, Bad or missing expression in '='
[0006.14] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(29) : Error, Unknown member 'CharacterProperties' in struct 'SCharacterData'
[0006.14] C:\UDK\UDK-2013-02\Development\Src\UTGame\Classes\SaveSystem.uc(41) : Warning, Class UTGame.SaveSystem can't bind to DLL C:\UDK\UDK-2013-02\Binaries\W
in64\UserCode\SaveSystem.DLL
[0006.14]
[0006.14] Failure - 2 error(s), 1 warning(s)
[0006.14]
Execution of commandlet took:  5.03 seconds


Os pongo el codigo del SaveSystem.uc porque yo no consigo dar con el fallo...

// Class definition, note that: DLLBind( // here goes your dll name //);
class SaveSystem extends Object DLLBind(SaveSystem);

// We have to define our structures here too //
// Declaring our character properties
struct SCharacterProperties
{
    var int iGoldHeld;
    var int iHealth;
    var int iMana;
};

// This strucure will hold all our character substructures //
struct SCharacterData
{
    var SCharacterProperties Properties;
    // We will add more structures inside here later //
};

// Here we declare the functions we want to retrieve from the dll //
// You can check the link I gave from epics, tocheck conversion types from c++ to UnrealScript
dllimport final function bool SaveProperties(string SaveName, SCharacterProperties CharacterProperties);
dllimport final function SCharacterProperties LoadProperties(string SaveName);

// This will be called to save to the properties //
function bool SaveTheCharacter(string SaveName, SCharacterData CharacterData)
{
    // We call the function we load from the dll, and pass the file name with the extension we desire for the properties //
    If (SaveProperties(SaveName @ ".pro", CharacterData.CharacterProperties) == false)
        return false;

    return true;
}

function bool LoadTheCharacter(string SaveName, out SCharacterData CharacterData)
{
    CharacterData.Properties = LoadCharacterProperties(SaveName @ ".pro");

    return true;
}

Gallo

Esa clase la has creado tu? En teoria las clases de utgame no has ni de usarlas, estan ahi de ejemplo, y mucho menos tocarlas. Mira si esta la dll que esta intentando bindear para el savegame.

Luego en esta linea

If (SaveProperties(SaveName @ ".pro", CharacterData.CharacterProperties) == false)

Se esta usando una propiedad que no existe, deberia ser CharacterData.Properties, no .CharacterProperties.

Netto22

#6
Cita de: Gallo en 02 de Julio de 2013, 02:18:13 PM
Esa clase la has creado tu? En teoria las clases de utgame no has ni de usarlas, estan ahi de ejemplo, y mucho menos tocarlas. Mira si esta la dll que esta intentando bindear para el savegame.

Luego en esta linea

If (SaveProperties(SaveName @ ".pro", CharacterData.CharacterProperties) == false)

Se esta usando una propiedad que no existe, deberia ser CharacterData.Properties, no .CharacterProperties.

Estaba siguiendo unos tutos, para saber como gestiona lo de guardar/cargar partida y ponian esos codigos tal que asi.

Solo que quizas haya hecho alguna manipulacion incorrecta.

La DLL esta situada en la ruta que especifica el error.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.