Today we learn about how to integrate a custom database into your NeoAxis game project! Why would you do this? Well what if you have a bunch of dialog for your characters? What if you have professions in your game and need to keep track of cooking recipies, minerals, herbs descriptions and stats? This would be an ideal place to store this sort information since it would not be apart of the NeoAxis *.type files and could very easily be edited and changed without having to start the Resource Editor or the Map Editor to make your changes.
You also have the power added of SQL database language to construct complex queries; maybe you want to keep track of achievements? This would also be another pefect use for writing to a custom database. You can also encrypt your database with strong password to prevent users from seeing this data, but this tutorial will not cover that functionality as it is very easy to change (just setting it is all that is needed, and then inputting it when database is opened in connection string).
SQLite is full ADO.Net compliant which means you can use DataObjects and it also supports direct integreation into Visual Studio IDE editor (even Express version!). This tutorial will cover the very basics of installing and creating proper references to a custom database. We will read and write information to it such as run count to keep track of how many times the engine has been run, then another example of importing data from CSV file into new table and referencing this data by choosing random entry from table using EngineRandom.
In this four part (37 minute) video your will learn the following:
- Install System.Data.SQLite correctly and integreate it with Visual Studio Express.
- Learn to operate SQLite Browser and create new database, add table, browse data and import new table from CSV.
- Construct custom SQL commands and read/write to database in real-time while NeoAxis is running.
- Create example debugging commands in NeoAxis to report SQLite version and current run count.
- Properly inegrate System.Data.SQLite into Game project for global database access from all of Game project with internal static instance.
- Modify default "Engine Loading..." message to say random loading joke such as "Reticulating splines" as example using SQLite in real example in NeoAxis.
Links to Software Used
Example CSV Database to Import:
Links To Videos