LCPD Device
Developer API Preview
LCPD Device is a very customizable device interface for scripting inside of the GTA IV game. Instead of remembering a large number of hotkeys, you can use it as a graphical interface to interact with your scripts on GTAIV. Better yet, LCPD Device has been build in order to allow 3rd party developers to create new applications for it and extends its functionalities.
Features
- Allow installation of custom device skins.
- Allow installation of custom applications.
- Toggle key configurable by its ini file.
- Notification system allow apps to show you information when the device is hidden.
Requirements
- The latest version of GTA IV or EFLC.
[*]ScriptHookDotNet
[*].NET Framework 4.5
Installation
In order to start using the LCPD Device, you just need to follow the simple steps below:
- Download the "LCPD Device Release X.X.X.X".
- Copy all contents from the package to the folder "scripts" inside of your main GTAIV or EFLC folder (eg. D:GamesGrand Theft Auto IVGTAIVscripts).
- Look over our Wiki Pages for more information.
Installing 3rd party components
Installing third party components is a very easy task, you need go to the "LCPDDevice" folder inside of your "scripts" folder (eg. D:GamesGrand Theft Auto IVGTAIVscriptsLCPDDevice). Therefore, you will see the following structure:
- apps: Here you can install, enable or disable third party applications. In order to install new apps, just copy the app folder to this folder.
- data: Here you can find all default collections for GTA infos such as cars, weapons and places.
- logs: Here you can find all logs created by installed applications.
- skin: Here you can find all installed skins. In order to install a new skin, just copy the skin folder to this folder and change the selected skin parameter on the main "config.ini" found on the "LCPDDevice" directory.
- lang: Here you can find all language strings displayed in game by the main application. Installed applications can use these strings or read their version of strings.
Developers API
The main idea behind the LCPD Device has to create a easier way to display a graphical user interface for GTAIV scripts. Therefore, LCPD Device has extended some default functionalities from the ScriptHookDotNet and warped them in a easier way to use. For example, LCPD Device allows to your application load the screen layout from a XML file, allowing a quick edit for your needs.
Therefore, to build an application to be used within LCPD Device, there is a documentation file and an example project (view links below). In addition, there will be new API available in the next versions to come, based on both user and developer feedbacks.
PLEASE: I really would like to receive some feedback from other developers in order to create a good API (within the GTA limitations, of course) that allow you create new apps for it.
Copyright Notice
Do not copy this script over any modding web site. If you want this mod to be displayed on your website, contact me for uploading so I can track and always keep them updated. Breaking this rule, will imply on a DCMA Takedown request to the website host company, and they always follow it. THE PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT WITHOUT ANY WARRANTY. IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
What's New in Version 0.0.2.0 BETA
Released
- 0.0.2.0 - API Update:
- - Introduction of LoggerHelper class to allow applications write logging messages easily.
- - Introduction of AppScript class to allow applications execute SHDN scripts on background.
- - Introduction of UniqueID parameter into app's config file.
- - Introduction of MinApiVersion and MaxApiVersion parameters into app's config file.
- - Renamed App to AppUI in order to better specify the difference between AppScript (Constantly running) and AppUI (Interface).
- - Added id parameter to notifications to allow overriding or deleting it early.
- - Added float and double parsing into StringHelper class.
- - Added float and double reading/writting into IniFile class.
- - Added possibility of setting EPISODE parameter to "TLAD|TBOGT" on collections.
- - Moved some app loading methods to AppManager class.
- 0.0.1.0 - First public BETA release.
Recommended Comments