Difference between revisions of "Category:PlugIn Development"

From Spesoft/GameEx Wiki
Jump to navigation Jump to search
 
(56 intermediate revisions by the same user not shown)
Line 4: Line 4:
GameEx and PinballX feature a very robust PlugIn system which accepts [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#] natively, so you can control many additional aspects of your build that are normally inaccessable without use of messy batch files or complicated AHK scripts. Currently, there are several PlugIns available from the respective program's PlugIn Manager interface that come pre-installed with both GameEx and PinballX, and additional PlugIns can be downloaded from the [http://www.gameex.info/forums/files Community Download Portal]. Many new features are actively developed by members of the community, thanks to this open source template for Tom's Speak Game Name PlugIn, which are located in a zip within the GameEx and PinballX PLUGINS subfolder in the program's root directory.<br /><br />
GameEx and PinballX feature a very robust PlugIn system which accepts [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#] natively, so you can control many additional aspects of your build that are normally inaccessable without use of messy batch files or complicated AHK scripts. Currently, there are several PlugIns available from the respective program's PlugIn Manager interface that come pre-installed with both GameEx and PinballX, and additional PlugIns can be downloaded from the [http://www.gameex.info/forums/files Community Download Portal]. Many new features are actively developed by members of the community, thanks to this open source template for Tom's Speak Game Name PlugIn, which are located in a zip within the GameEx and PinballX PLUGINS subfolder in the program's root directory.<br /><br />


== <span style="color:darkblue;">PlugIn Development Overview</span> ==
== <span class="plugin_headline_text">PlugIn Development Overview</span> ==
In the following section, you will find documentation on the functions that are exposed through GameEx's and PinballX's PlugIn systems, and some code that demonstrates their useage in both [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#]. You will also find variable and enum documentation, as well as links to [http://www.gameex.info/wiki/index.php/Category:PlugIn_Development#Visual_Studio_2010_Plugin_Templates_.26_Development_Tools templates and development tools] that you can use to quickly start creating your own PlugIns.
In the following section, you will find documentation on the functions that are exposed through GameEx's and PinballX's PlugIn systems, and some code that demonstrates their useage in both [http://msdn.microsoft.com/en-us/library/aa712050(v=vs.71).aspx VB.NET] and [http://msdn.microsoft.com/en-us/library/ms228593.aspx C#]. You will also find variable and enum documentation, as well as links to [http://www.gameex.info/wiki/index.php/Category:PlugIn_Development#Visual_Studio_2010_Plugin_Templates_.26_Development_Tools templates and development tools] that you can use to quickly start creating your own PlugIns.
<br />
<br />
If you have any questions, the development team is very good about helping would-be developers get familiar with the ins and outs of the system in [http://www.gameex.info our community forums].
If you have any questions, the development team is very good about helping would-be developers get familiar with the ins and outs of the system in [http://www.gameex.info our community forums].
<br /><br />
<br /><br />
<span style="color:darkred;"><b>PLEASE NOTE:</b> ''The plugin system requires all DLLs be compiled for an x86 target environment and built on [http://msdn.microsoft.com/en-us/library/t357fb32(v=vs.90).aspx .NET Framework 2.0] to function properly!''</span>
<div class="note_block_red"><b>PLEASE NOTE:</b> ''The plugin system requires all DLLs be compiled for an x86 target environment and built on [http://msdn.microsoft.com/en-us/library/t357fb32(v=vs.90).aspx .NET Framework 2.0] to function properly!''</div>
<br />
<br />
== <span style="color:darkblue;">GameEx: PlugIn Functions</span> ==
 
== <span class="plugin_headline_text">GameEx: PlugIn Functions</span> ==
<p>Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:</p>
<p>Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:</p>
=== <span style="color:darkgreen;"> &bull; PlugIn Data Structures & Enumerations &bull; </span> ===
=== <span class="plugin_text_fx"> &bull; PlugIn Data Structures & Enumerations &bull; </span> ===
<div style="border-style:solid; border-color:darkgreen; background-color:#F0FFF0; border-width:1px; padding:5px 5px;">
<div class="plugin_contents_box">
*[[PlugIn_Development:GameEx_Version_Info|GameEx Info (Structure)]]
<table width="100%" style="border-style:collapse; table-layout: fixed;">
*[[PlugIn_Development:GameEx_PlugIn Info|PlugIn Info (Structure)]]
<tr align="center" valign="middle">
*[[PlugIn_Development:GameEx_PlugIn_Type|PlugIn Type (Enum)]]
<td>&bull; [[PlugIn_Development:GameEx_Version_Info|GameEx Info (Structure)]]</td>
*[[PlugIn_Development:GameEx_MAME_Update|MAME List Update Type (Enum)]]
<td>&bull; [[PlugIn_Development:GameEx_PlugIn Info|PlugIn Info (Structure)]]</td>
*[[PlugIn_Development:GameEx_MCE_Remote_Key|MCE Remote Key (Enum)]]</div>
<td>&bull; [[PlugIn_Development:GameEx_PlugIn_Type|PlugIn Type (Enum)]]</td>
=== <span style="color:darkgreen;"> &bull; Main Plugin Functions &bull; </span> ===
</tr>
<div style="border-style:solid; border-color:darkgreen; background-color:#F0FFF0; border-width:1px; padding:5px 5px;">
<tr align="center" valign="middle">
*[[PlugIn_Development:GameEx_Initialize_Function|Initialize Plugin]]
<td>&bull; [[PlugIn_Development:GameEx_MAME_Update|MAME List Update Type (Enum)]]</td>
*[[PlugIn_Development:GameEx_Configure_Function|Configure Plugin]]</div>
<td>&bull; [[PlugIn_Development:GameEx_MCE_Remote_Key|MCE Remote Key (Enum)]]</td>
=== <span style="color:darkgreen;"> &bull; Input Events &bull; </span> ===
<td></td>
<div style="border-style:solid; border-color:darkgreen; background-color:#F0FFF0; border-width:1px; padding:5px 5px;">
</tr>
*[[PlugIn_Development:GameEx_Input_Joystick_Function|Input Joystick]]
</table></div>
*[[PlugIn_Development:GameEx_Input_Keyboard_Function|Input Keyboard]]
 
*[[PlugIn_Development:GameEx_Input_MCE Remote_Function|Input MCE Remote]]</div>
=== <span class="plugin_text_fx"> &bull; Main Plugin Functions &bull; </span> ===
=== <span style="color:darkgreen;"> &bull; Application Events &bull; </span> ===
<div class="plugin_contents_box">
<div style="border-style:solid; border-color:darkgreen; background-color:#F0FFF0; border-width:1px; padding:5px 5px;">
<table style="border-style:collapse; width:100%; table-layout: fixed;">
*[[PlugIn_Development:GameEx_Event_App_Exit_Function|App Exit]]
<tr align="center" valign="middle">
*[[PlugIn_Development:GameEx_Event_CommandLine_Function|CommandLine]]
<td>&bull; [[PlugIn_Development:GameEx_Initialize_Function|Initialize Plugin]]</td>
*[[PlugIn_Development:GameEx_MAME_List_Update_Function|MAME List Update]]</div>
<td>&bull; [[PlugIn_Development:GameEx_Configure_Function|Configure Plugin]]</td>
<td></td>
</tr>
</table></div>
 
=== <span class="plugin_text_fx"> &bull; Input Events &bull; </span> ===
<div class="plugin_contents_box">
<table width="100%" style="border-style:collapse; table-layout: fixed;">
<tr align="center" valign="middle">
<td>&bull; [[PlugIn_Development:GameEx_Input_Joystick_Function|Input Joystick]]</td>
<td>&bull; [[PlugIn_Development:GameEx_Input_Keyboard_Function|Input Keyboard]]</td>
<td>&bull; [[PlugIn_Development:GameEx_Input_MCE Remote_Function|Input MCE Remote]]</td>
</tr>
</table></div>
 
=== <span class="plugin_text_fx"> &bull; Application Events &bull; </span> ===
<div class="plugin_contents_box">
<table width="100%" style="border-style:collapse; table-layout: fixed;">
<tr align="center" valign="middle">
<td>&bull; [[PlugIn_Development:GameEx_Event_App_Exit_Function|App Exit]]</td>
<td>&bull; [[PlugIn_Development:GameEx_Event_CommandLine_Function|Command Line]]</td>
<td>&bull; [[PlugIn_Development:GameEx_MAME_List_Update_Function|MAME List Update]]</td>
</tr>
<tr align="center" valign="middle">
<td>&bull; [[PlugIn_Development:GameEx_Event_Emulator_Load_Function|Emulator Load]]</td>
<td>&bull; [[PlugIn_Development:GameEx_Event_Favorites_Function|Favorites]]</td>
</tr>
</table></div>
<br />
<br />


== <span style="color:darkblue;">PinballX: PlugIn Functions</span> ==
== <span class="plugin_headline_text">PinballX: PlugIn Functions</span> ==
Nothing yet!
Nothing yet!
<br />
<br />
== <span style="color:darkblue;">PlugIn Download Links</span> ==
 
== <span class="plugin_headline_text">PlugIn Download Links</span> ==
&diams; [http://www.gameex.info/forums/files/category/8-plugins GameEx: PlugIn Downloads]<br />
&diams; [http://www.gameex.info/forums/files/category/8-plugins GameEx: PlugIn Downloads]<br />
&diams; [http://www.gameex.info/forums/files/category/21-apps-config-map-files-plugins PinballX: PlugIn Downloads]<br />
&diams; [http://www.gameex.info/forums/files/category/21-apps-config-map-files-plugins PinballX: PlugIn Downloads]<br />
Line 45: Line 74:
&diams; [http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]<br />
&diams; [http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]<br />


== <span style="color:darkblue;">PlugIn Templates & Development Tools</span> ==
== <span class="plugin_headline_text">PlugIn Templates & Development Tools</span> ==
=== <span style="color:darkgreen;">GameEx</span> ===
=== <span class="plugin_text_fx">GameEx</span> ===
&diams; [http://www.gameex.info/forums/topic/11391-plugin-development-visual-basic-2010-project-template Visual Studio 2010 VB.NET GameEx PlugIn Snap-In Template]<br />
&diams; [http://www.gameex.info/forums/topic/11391-plugin-development-visual-basic-2010-project-template Visual Studio 2010 VB.NET GameEx PlugIn Snap-In Template]<br />
&diams; [http://www.gameex.info/forums/topic/11412-plugin-development-function-logger GameEx Function Logger PlugIn]<br />
&diams; [http://www.gameex.info/forums/topic/11412-plugin-development-function-logger GameEx Function Logger PlugIn]<br />
=== <span style="color:darkgreen;">PinballX</span> ===
 
=== <span class="plugin_text_fx">PinballX</span> ===
&diams; [http://www.gameex.info/forums/topic/13158-plugin-development-vbnet-pinballx-snap-in-plugin-template Visual Studio 2010 VB.NET PinballX PlugIn Snap-In Template]<br />
&diams; [http://www.gameex.info/forums/topic/13158-plugin-development-vbnet-pinballx-snap-in-plugin-template Visual Studio 2010 VB.NET PinballX PlugIn Snap-In Template]<br />
&diams; [http://www.gameex.info/forums/topic/13008-plugin-function-logger-pinballx-edition PinballX Function Logger PlugIn]<br />
&diams; [http://www.gameex.info/forums/topic/13008-plugin-function-logger-pinballx-edition PinballX Function Logger PlugIn]<br />

Latest revision as of 22:49, 30 April 2014

caption This article was just created and is considered to be a work in progress. More editing may be required in order to meet standard guidelines for quality submission. Please do not immediately mark this article for deletion, but please do periodically monitor progress being made on this article and/or contact the creator to ascertain their plans. If the creator has abandoned work on this page and is not responding to communication, you may consider marking this article for deletion or removing all existing category tags and adding it to the Draft Submissions category for collaborative improvement (i.e. you would add [[Category:Draft Submissions]] to the bottom of the page).


GameEx Plugins Directory

GameEx and PinballX feature a very robust PlugIn system which accepts VB.NET and C# natively, so you can control many additional aspects of your build that are normally inaccessable without use of messy batch files or complicated AHK scripts. Currently, there are several PlugIns available from the respective program's PlugIn Manager interface that come pre-installed with both GameEx and PinballX, and additional PlugIns can be downloaded from the Community Download Portal. Many new features are actively developed by members of the community, thanks to this open source template for Tom's Speak Game Name PlugIn, which are located in a zip within the GameEx and PinballX PLUGINS subfolder in the program's root directory.

PlugIn Development Overview

In the following section, you will find documentation on the functions that are exposed through GameEx's and PinballX's PlugIn systems, and some code that demonstrates their useage in both VB.NET and C#. You will also find variable and enum documentation, as well as links to templates and development tools that you can use to quickly start creating your own PlugIns.
If you have any questions, the development team is very good about helping would-be developers get familiar with the ins and outs of the system in our community forums.

PLEASE NOTE: The plugin system requires all DLLs be compiled for an x86 target environment and built on .NET Framework 2.0 to function properly!


GameEx: PlugIn Functions

Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:

• PlugIn Data Structures & Enumerations •

• Main Plugin Functions •

• Input Events •

• Application Events •


PinballX: PlugIn Functions

Nothing yet!

PlugIn Download Links

GameEx: PlugIn Downloads
PinballX: PlugIn Downloads
GameEx User Project Forum
PinballX User Project Forum

PlugIn Templates & Development Tools

GameEx

Visual Studio 2010 VB.NET GameEx PlugIn Snap-In Template
GameEx Function Logger PlugIn

PinballX

Visual Studio 2010 VB.NET PinballX PlugIn Snap-In Template
PinballX Function Logger PlugIn