10.12.2007, 12:17
(
Последний раз редактировалось DracoBlue; 29.03.2011 в 21:55.
)
Hello coders, hello scripters.
Since I am coding on GTA:Tournament and other GameModes with a lot of coders at once, its difficult to coordinate all stuff if you use normal-pawn-include-method. So I wrote especially for GTA:T a module system which auto-merged scripting parts "contained" in modules and so it was easy to test only parts of the 20.000 lines gamemode.
But it was pretty ugly if somebody is new to my coding team, so I sat down with my coding staff and asked them: What are you missing in pawn and that old module system?
Answers:
- compiling more then one module at once
- defining own callbacks
- defining sets of modules as project
- defining ... lots of more
Then DModule was born. The whole month I have been developing on DModule (from V0.1 to V0.12, 10th Dec 2007) and now we think DModule is ready for the masses.
SAMP 0.2.2 Enchancements: (means default SAMP-functions repaired)
- TextDraws (fixed crashes)
- SetPlayerTeam/GetPlayerTeam/AddPlayerClassEx/AddPlayerClass (fixed teams)
- FriendlyFire (made working)
SAMP 0.3c SUPPORT
_________________________________________________
It has been a time since dmodule 0.13 was release. The development moved further and 0.15-dev is already available on github: https://github.com/DracoBlue/Dmodule
Please use that version if you are really interested in Dmodule!
What is DModule?
_________________________________________________
If you want to play Grand Theft Auto: San Andreas online, check the official sa-mp site instead. If you are developing or want to get in development of gamemodes for SA-MP Multiplayer Modification for Grand Theft Auto San Andreas, you'll be interested in DModule.
DModule is not a library. Its an open source (under MIT-license: use it, copy it, hack it, sell it, love it) framework for Pawn-Development (optimized for SA-MP GameModes). It provides project and module based development functions. Whole samp-functionality is implemented as modules, too. So you can see how powerful the modulesystem is. It also provides complete translation support with own implementation of gettext.
For expirienced developers its implements definition of own events (dynamic callbacks) and Read/Write-Properties - called Values. Throwing an Event as soon as a Value changes and allowing you to react just in time, instead of checking with a fancy Timer EverySecond!
For debugging it implements lots of debug prints without you need to write a line of extra code. It also supports an own version of pwndoc (similar to javadoc) to autogenerate wiki-documentation for your project!
The dependency features of DModule fix the issues big library packages like MIC or YSI currently have. All callbacks "need to be implemented" somewhere. DModule "fixes" that by implementing dynamic callbacks a.k.a events. If you wrote such a library and need help to use all the features of dmodule - feel free to join us in irc!
Downloading DModule
_________________________________________________
Before we can start with DModule, you need a new folder for DModule.
1. Open your explorer, create a folder called "DModule" and head over to the Download-Section.
2. There you'll find a file called dmodule_0_13.zip. Open it with your explorer and you'll find a folder dmodule_0_13 in it. Extract all contents to your folder "DModule" (which we created a step above).
3. You are ready to use DModule!
Open Source
_________________________________________________
DModule is licensed under the terms of MIT-License. That is a very open license, which allows you using it in (non-)commercial closed/open-source projects. Anyways a comment in your about box is always appriciated .
That was the very very short introduction. I suggest you to download latest version and give it a try. We have set up a Tutorial for you and love to see you guys in #dmodule channel on irc.gtanet.com!
Kind regards,
Jan (DracoBlue)
Since I am coding on GTA:Tournament and other GameModes with a lot of coders at once, its difficult to coordinate all stuff if you use normal-pawn-include-method. So I wrote especially for GTA:T a module system which auto-merged scripting parts "contained" in modules and so it was easy to test only parts of the 20.000 lines gamemode.
But it was pretty ugly if somebody is new to my coding team, so I sat down with my coding staff and asked them: What are you missing in pawn and that old module system?
Answers:
- compiling more then one module at once
- defining own callbacks
- defining sets of modules as project
- defining ... lots of more
Then DModule was born. The whole month I have been developing on DModule (from V0.1 to V0.12, 10th Dec 2007) and now we think DModule is ready for the masses.
SAMP 0.2.2 Enchancements: (means default SAMP-functions repaired)
- TextDraws (fixed crashes)
- SetPlayerTeam/GetPlayerTeam/AddPlayerClassEx/AddPlayerClass (fixed teams)
- FriendlyFire (made working)
SAMP 0.3c SUPPORT
_________________________________________________
It has been a time since dmodule 0.13 was release. The development moved further and 0.15-dev is already available on github: https://github.com/DracoBlue/Dmodule
Please use that version if you are really interested in Dmodule!
What is DModule?
_________________________________________________
If you want to play Grand Theft Auto: San Andreas online, check the official sa-mp site instead. If you are developing or want to get in development of gamemodes for SA-MP Multiplayer Modification for Grand Theft Auto San Andreas, you'll be interested in DModule.
DModule is not a library. Its an open source (under MIT-license: use it, copy it, hack it, sell it, love it) framework for Pawn-Development (optimized for SA-MP GameModes). It provides project and module based development functions. Whole samp-functionality is implemented as modules, too. So you can see how powerful the modulesystem is. It also provides complete translation support with own implementation of gettext.
For expirienced developers its implements definition of own events (dynamic callbacks) and Read/Write-Properties - called Values. Throwing an Event as soon as a Value changes and allowing you to react just in time, instead of checking with a fancy Timer EverySecond!
For debugging it implements lots of debug prints without you need to write a line of extra code. It also supports an own version of pwndoc (similar to javadoc) to autogenerate wiki-documentation for your project!
The dependency features of DModule fix the issues big library packages like MIC or YSI currently have. All callbacks "need to be implemented" somewhere. DModule "fixes" that by implementing dynamic callbacks a.k.a events. If you wrote such a library and need help to use all the features of dmodule - feel free to join us in irc!
Downloading DModule
_________________________________________________
Before we can start with DModule, you need a new folder for DModule.
1. Open your explorer, create a folder called "DModule" and head over to the Download-Section.
2. There you'll find a file called dmodule_0_13.zip. Open it with your explorer and you'll find a folder dmodule_0_13 in it. Extract all contents to your folder "DModule" (which we created a step above).
3. You are ready to use DModule!
Open Source
_________________________________________________
DModule is licensed under the terms of MIT-License. That is a very open license, which allows you using it in (non-)commercial closed/open-source projects. Anyways a comment in your about box is always appriciated .
That was the very very short introduction. I suggest you to download latest version and give it a try. We have set up a Tutorial for you and love to see you guys in #dmodule channel on irc.gtanet.com!
Kind regards,
Jan (DracoBlue)