Game Template
Early Preview
I don't have an official home for this yet. The Game Template is a project I started after I lost my job. I have spent 4-5 months on this project and I am going to be releasing it commercially for cheap. I will constantly update this project with new features coming out with an updated library of commands.
Features:
- Performance: To control how fast the game runs. You have control of how many loops per second of every loop or thread.
- Multi-Threading support: Basic Multi-Threading support. Not much you can do with it yet. I am just starting to implement mutexes. It isn't 100% crash proof though.
- File: Find Files, Save, and lookup files
- Resource Management: The most flexible resource management tied into a file database.
- Timers: Timed events or simple game timers.
- Animation: Early stages of learning how to quickly export and load animation. Working on a new solution for converting anything to enhanced animation format.
- Input: Capture input from multiple keys/buttons and easily create functions (events) to do something if a key was pressed/released/held down.
- Create Threads/Coroutines and it is automatically handled by the template.
- Create setup functions that are automatically called by the template
- Resource searching by name
- Animation searching by object name and animation name
- Debugging: Basic Debugging. I will expand this feature later. It reports errors to the debug window and saves the messages in a log file.
- ..and much more
Function List:
Main.dba:
Loop_Main
Loop_Display
Update_Main
Animation.dba:
Setup_Animation
CharacterShop_Extract
ApocalypticPack_Extract
ModelPack10_Extract
Animation_WriteList
CharacterShop_WriteList
ApocalypticPack_WriteList
ModelPack10_WriteList
CharacterShop_NoAnimAll
ApocalypticPack_NoAnimAll
ModelPack10_NoAnimAll
Extract_FPSCreatorBase
Extract_CharacterShopBase
Extract_ModelPack10
Dynamic Resources.dba:
Coroutine_GarbageCollection
DeleteObject
DeleteSprite
DeleteMemblock
DeleteCamera
DeleteEmitter
DeleteVector2
DeleteVector3
DeleteVector4
DeleteImage
DeleteEffect
DeleteSound
DeleteMesh
DeleteMusic
CloseFile
DeleteMatrix
CloseDFS
CloseKFS
DeleteLookup
DeleteBank
DeleteMutex
NextObject
NextImage
NextCamera
NextEffect
NextSound
NextMesh
NextMemblock
NextVector
NextEmitter
NextMusic
NextFile
NextSprite
NextMatrix
NextDatabase
NextLookup
NextBank
NextCoroutine
NextMutex
NextDll
Lua_FileAdd
Lua_FileGet
File_LoadObject
File_LoadSound
File_LoadMusic
File_LoadEffect
File_LoadImage
File_LoadAnimation
Lua_LoadObject
Lua_LoadSound
Lua_LoadMusic
Lua_LoadEffect
Lua_LoadImage
Lua_LoadAnimation
Database_LoadObject
Database_LoadSound
Database_LoadMusic
Database_LoadEffect
Database_LoadImage
Database_LoadAnimation
Lua_GetObject
Lua_GetImage
Lua_GetCamera
Lua_GetEffect
Lua_GetSound
Lua_GetMesh
Lua_GetMusic
Lua_GetFile
Lua_GetEmitter
Lua_GetSprite
Lua_GetMatrix
Lua_GetVector
Lua_GetDatabase
Lua_GetLookup
Lua_GetBank
Lua_GetCoroutine
Lua_GetMutex
Lua_GetAnimationByName
Lua_GetAnimation
Lua_NameObject
Lua_NameImage
Lua_NameCamera
Lua_NameEffect
Lua_NameSound
Lua_NameMesh
Lua_NameMusic
Lua_NameFile
Lua_NameEmitter
Lua_NameSprite
Lua_NameMatrix
Lua_NameVector
Lua_NameDatabase
Lua_NameLookup
Lua_NameMemblock
Lua_NameBank
Lua_NameCoroutine
Lua_NameMutex
Lua_NameAnimation
Database_ResourceSearch
File_ResourceSearch
Lua_ResourceSearch
FreeObject
FreeImage
FreeCamera
FreeEffect
FreeSound
FreeMesh
FreeMusic
FreeEmmitter
FreeSprite
FreeFile
FreeMatrix
FreeVector
FreeLookup
FreeMemblock
FreeBank
LoadObject
LoadImage
LoadEffect
LoadSound
LoadMusic
LoadMesh
OpenFileToWrite
OpenFileToRead
CloseCurrentFile
LoadSprite
CreateSprite
CreateCamera
CreateSphere
CreateComplexSphere
CreateCube
ObjectToMesh
MeshToObject
CreateAnimatedSprite
LoadDll
Events.dba:
SetupEvents
PerformanceEvent_Create
PerformanceEvent_SetThread
Event_Create
Event_Call
Event_CallByName$
Event_CallByPtr
Event_CallByNumber
Event_SetParameter1#
Event_SetParameter1$
Event_SetParameter2#
Event_SetParameter2$
Event_SetParameter3#
Event_SetParameter3$
Event_SetParameter4#
Event_SetParameter4$
Event_SetParameter5#
Event_SetParameter5$
CreateCoroutine
Update_Coroutines
Close_DeleteCoroutines
CreateThread
CloseThread
CloseAll_Threads
ThreadSleep
CreateMutex
Set_CanRunFlag
Get_CanRunFlag
Lua_GetThreadIndex
Lua_NameThread
File.dba:
Setup_File
SaveAsDatabase
SaveAsFile
LoadFile
LoadDatabase
ScanFolder
HandleFile
RemoveExtension$
GetFileExtension$
GetPathFolder
GetExtentionType
DeleteFileDatabase()
Input.dba:
Thread_ScanInput
KeyPressed
MousePressed
Mouse_GetState
MouseName$
FindKeyIndex
FindMouseIndex
Messages.dba:
Send_Error$
Send_Message$
Send_Warning$
Handle_Messages
Send_ShutDown
Performance.dba:
Update_Performance
Setup.dba:
Setup
Close
Lua_LoadScript
Timers.dba:
Create_Timer
Create_TimedEvent
Update_TimedEvents
Reset_Timer
GetHours
GetMinutes
GetSeconds
GetMiliSeconds
GetFreq
If you want anything in the next template let me know. I will constantly update the template until I have a full editor and framework for making games easily.
Updates are posted on my blog:
http://www.tumblr.com/tumblelog/digitalfuryblog
Any questions, comments, ideas, or thoughts let me know.
DigitalFury