Difference between revisions of "Category:PlugIn Development"

From Spesoft/GameEx Wiki
Jump to navigation Jump to search
 
(94 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Plugin Development Overview==
{{New Page}}
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 the programs, 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 available within the GameEx and PinballX installs respectively.
<br />
[[File:Plugins_Dir.jpg|frame|GameEx Plugins Directory]]
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 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 />
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 .NET Framework 2.0''</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 />


==GameEx Plugin Functions==
== <span class="plugin_headline_text">GameEx: PlugIn Functions</span> ==
Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:
<p>Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:</p>
=== <span class="plugin_text_fx"> &bull; PlugIn Data Structures & Enumerations &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_Version_Info|GameEx Info (Structure)]]</td>
<td>&bull; [[PlugIn_Development:GameEx_PlugIn Info|PlugIn Info (Structure)]]</td>
<td>&bull; [[PlugIn_Development:GameEx_PlugIn_Type|PlugIn Type (Enum)]]</td>
</tr>
<tr align="center" valign="middle">
<td>&bull; [[PlugIn_Development:GameEx_MAME_Update|MAME List Update Type (Enum)]]</td>
<td>&bull; [[PlugIn_Development:GameEx_MCE_Remote_Key|MCE Remote Key (Enum)]]</td>
<td></td>
</tr>
</table></div>


'''<span style="font-size:110%; color:darkgreen;">PlugIn Info</span>'''
=== <span class="plugin_text_fx"> &bull; Main Plugin Functions &bull; </span> ===
*[[PlugIn Development:GameEx PlugIn Info|PlugIn Info Constants]]
<div class="plugin_contents_box">
<table style="border-style:collapse; width:100%; table-layout: fixed;">
<tr align="center" valign="middle">
<td>&bull; [[PlugIn_Development:GameEx_Initialize_Function|Initialize Plugin]]</td>
<td>&bull; [[PlugIn_Development:GameEx_Configure_Function|Configure Plugin]]</td>
<td></td>
</tr>
</table></div>


'''<span style="font-size:110%; color:darkgreen;">Main Plugin Functions</span>'''
=== <span class="plugin_text_fx"> &bull; Input Events &bull; </span> ===
*[[PlugIn Development:GameEx Initialize Function|Initialize Plugin]]
<div class="plugin_contents_box">
*[[PlugIn Development:GameEx Configure Function|Configure Plugin]]
<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 style="font-size:110%; color:darkgreen;">Input Events</span>'''
=== <span class="plugin_text_fx"> &bull; Application Events &bull; </span> ===
*[[PlugIn Development:GameEx Input Joystick Function|Input Joystick]]
<div class="plugin_contents_box">
*[[PlugIn_Development:GameEx Input Keyboard Function|Input Keyboard]]
<table width="100%" style="border-style:collapse; table-layout: fixed;">
*[[PlugIn Development:GameEx Input MCE Remote Function|Input MCE Remote]]
<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 />


'''<span style="font-size:110%; color:darkgreen;">Application Events</span>'''
== <span class="plugin_headline_text">PinballX: PlugIn Functions</span> ==
*[[PlugIn Development:GameEx Event App Exit Function|App Exit Event]]
Nothing yet!
*[[PlugIn Development:GameEx Event CommandLine Function|CommandLine Event]]
<br />


==PinballX Plugin Functions==
== <span class="plugin_headline_text">PlugIn Download Links</span> ==
Nothing yet!
&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/forum/22-user-projects GameEx User Project Forum]<br />
&diams; [http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]<br />


==Plugin Download Links==
== <span class="plugin_headline_text">PlugIn Templates & Development Tools</span> ==
[http://www.gameex.info/forums/files/category/8-plugins GameEx Plugin Downloads]<br />
=== <span class="plugin_text_fx">GameEx</span> ===
[http://www.gameex.info/forums/files/category/21-apps-config-map-files-plugins PinballX Plugin Downloads]<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 />
[http://www.gameex.info/forums/forum/22-user-projects GameEx User Project Forum]<br />
&diams; [http://www.gameex.info/forums/topic/11412-plugin-development-function-logger GameEx Function Logger PlugIn]<br />
[http://www.gameex.info/forums/forum/33-user-projects PinballX User Project Forum]<br />


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


[[Category:Index]]
[[Category:GameEx]]
[[Category:GameEx]]
[[Category:PinballX]]
[[Category:PinballX]]
[[Category:Plugin Development]]
[[Category:Plugin_Development]]

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