Code Monkey home page Code Monkey logo

gfxfilemanager's Introduction

GFXFileManager

An example replacement for the Joymax File Manager used in Silkroad Online.

What?

This code will allow you to load all game-related files directly from your harddisk instead of the pk2-container. This will simplify your development process.

a cool screenshot

Simply compile the code using Visual Studio 2010. Other versions, especially newer, may not work properly (Feel free to test and report your results). Place the compiled GFXFileManager.dll inside your Silkroad Folder.

Work in progress!

The implementation is far from complete and has been tested just barely. At the current state of development, the game will start just fine. Creating or deleting files, handling directories, browsing archives, is currently not possible.

Customize

This code also allows you to create your own container-format. Study the code and implement all required functions for your container.

The code will automatically output every function call. This is useful for debugging but will slow everything a lot, so use with care. Some messages are configureable. Simply change this line of debug.cpp:

int m_group = DEBUG_FULL;

There are several groups available:

enum debug_group {
	DEBUG_OFF			= 0,
	DEBUG_OBJECT		= 1,
	DEBUG_CONTAINER		= 2,
	DEBUG_FILE_GEN		= 4,
	DEBUG_FILE			= 8,
	DEBUG_FILE_NOTFOUND	= 16,
	DEBUG_IO			= 32,
	DEBUG_DIRECTORY		= 64,
	DEBUG_DIRECTORY_GEN	= 128,
	DEBUG_SEARCH		= 256,
	DEBUG_UNKNOWN		= 512,
	DEBUG_OTHER			= 1024,
	DEBUG_FULL			= 0xFFFFFFFF
};

You can also combine multiple groups like this:

int m_group = DEBUG_CONTAINER | DEBUG_FILE_GEN | DEBUG_FILE_NOTFOUND | DEBUG_OTHER;

Troubleshooting & Support

Feel free to report all bugs and problems you encounter. This is a work in progress and any contribution is welcome.

gfxfilemanager's People

Contributors

florian0 avatar bueddl avatar

Stargazers

 avatar

Watchers

James Cloos avatar Alper Bağdemir avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.