Difference between revisions of "Category:PlugIn Development"

From Spesoft/GameEx Wiki
Jump to navigation Jump to search
 
(104 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 />


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 [Category:PlugIn_Development#Visual_Studio_2010_Plugin_Templates_.26_Development_Tools templates and development tools] you can use to quickly start creating your own PlugIns.
== <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.
<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].
<br /><br />
<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 />


In addition, you can visit the Community Download Portal and see what other users have created, and share your own creations. 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].
== <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>
=== <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="color:darkred;">''NOTE: The plugin system requires all dlls be compiled for an x86 target environment and built on .NET Framework 2.0''</span>
=== <span class="plugin_text_fx"> &bull; Main Plugin Functions &bull; </span> ===
<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>


==GameEx Plugin Functions==
=== <span class="plugin_text_fx"> &bull; Input Events &bull; </span> ===
Below is a list of exposed functions you can use to manipulate GameEx using the PlugIn interface:
<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>


'''PlugIn.dll Function List'''
=== <span class="plugin_text_fx"> &bull; Application 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;">
*[[PlugIn Development:GameEx Input Joystick Function|Input Joystick]]
<tr align="center" valign="middle">
*[[PlugIn Development:GameEx Input MCE Remote Function|Input MCE Remote]]
<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 />


==PinballX Plugin Functions==
== <span class="plugin_headline_text">PinballX: PlugIn Functions</span> ==
Nothing yet!
Nothing yet!
<br />


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


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


=== <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/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