GithubHelp home page GithubHelp logo

myztyn / barebone_pokemonunity Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 62.5 MB

BareBone-PokemonUnity Framework

License: BSD 3-Clause "New" or "Revised" License

C# 99.13% SCSS 0.70% PowerShell 0.17%
pokemon-unity pokemon-framework pokemon-game csharp unity pokemon-logic

barebone_pokemonunity's Introduction

BareBone-Pokémon Framework with Unity (not __FOR__ Unity -- Important Distinction) by Herbert Milhomme

License GitBook

This repo has archive because You can directly download from Herbertmilhomme's PokemonUnity and drag dll to empty project. Here link

BareBone Pokemon Framework

This a BAREBONE Pokemon Unity with no demo, sprite, texture, maps, and etc. Just FRAMEWORK with pokemon logic. Will keep this update as Herbert Hilhomme update the Pokemon Unity Framework. This has a empty database so you need to maunal add whole the database.

Summary

Pokémon Framework is a framework written in C-Sharp and designed to be built on top of, as a foundation and key component in any Pokémon remake or emulator. Because the project is so loosely coupled from any frontend component, it allows for the project to easily migrate between any engine or platform that's C# compatible (i.e. Unity3d, Websites/ASP.Net, or even commandline console, as a text based Pokémon battle simulator).

This contains a C# port of Pokémon Essentials (extension package for RPG Maker MV, which is written in Ruby), that I authored myself. Since Ruby follows similar object-oriented coding structures, it's easy to mirror the code to function the same (with very few and minor differences). Docs for Pokémon Essentials

I have changed so much of the original Pokémon Unity code on the backend that this project runs and functions more like pokemon essentials, but with pokemon unity assets on frontend as a wrapper. I swapped out all of the data from Pokemon Essentials to use Veekun's Database, which is more expansive (more detailed, regularyly kept up-to-date, and formatted for database queries by default.

To summarize, this project rewrites Pokemon Essentials logic to implement Pokemon mechanics, using Veekun's Pokedex which rips data directly from Nintendo's Pokemon game, as foundation for Pokemon Framework. The game's text will be locally translated, through crowdsourcing that i've personally configured and setup on my own private webserver, which will return xml packages that can be downloaded and used as localized scripts by source. Then using GameFramework for Unity as a template, i will integrate the base Pokemon Framework to overwrite the template data to run like a Pokemon game, while feeding the behavior into the Pokemon Unity assets as final render and output (game .exe compile). If you have any experience with Pokemon Essentials, but with a perference for Unity or C#, then this is the project for you. End users are still required to have an aptitude or interest in hardwork. As in, this project isnt making a game for you, or shipping you with a completed game to enjoy and experience; this is a FRAMEWORK you still have to put in effort to make your own "game" (and why the source codes are being uploaded and not a link to an .exe download).

Please be aware that some features in this branch are incomplete (the features in the test-project branch is being tracked and monitored by the build status). I strongly recommend that you use the master branch as a base rather than the test-project branch. This branch is entirely experimental and contains wild erratic ideas, which has possibility of breaking your fangame or other project that is based on this code.

Please report any bugs if found.

This project is NOT affiliated with Pokemon Essentials, Project Veekun, GameFramework, nor Pokemon Unity (I was one of the core devs, and branched out into my own unique project).

Project Design

Kind of going to repeat myself here, but this is important to note. This project that utilizes Unity3d Game Developer Engine, as its' visual and front-end interface for end user, has been written designed in a way that the backend logic and mechanic is SEPARATE from everything a user SEES and HEARS (General User Experience; the visuals, audio, and how they interact with the code, to make it do things). I would like to advice developers and users of project source code to reference this youtube video for context.

Because the backend and frontend are decoupled, that means that there is no unity libraries mixed in with any of the pokemon logic or mechanics. Because unity is a frontend component, it is set aside to keep separation of responsibilities intact. Since the two bubbles are defined by their own constraints, developers can easily Unit Test the backend code using standard unit testing practices; and unit test unity design, using Unity's built-in unit test function.

Coding Standards

Enumeration

All of the global enums are stored in a single directory, so that they're easily accessible across the project. Anything that ends in an "S" is most likely an Enum. PokemonUnity.Pokemons is an enum of Pokemon. (It will list all the individual pokemons in pokedex with their given IDs).

Credits

Links

barebone_pokemonunity's People

Contributors

myztyn avatar

Stargazers

 avatar  avatar

Watchers

 avatar

barebone_pokemonunity's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.