Giter VIP home page Giter VIP logo

simplexrpgengine's Introduction



Awards selection

Contesting project on Intel ISEF 2018 - US, Pittsbourgh and EUCYS 2018 - Ireland, Dublin. Winning project of national SPA 2018 competition (category engineering), awared for scientifical value by ČVUT/FEL, multiple times awarded as best student project by region of Liberec, Czech Republic.

Why Simplex Engine 3

Ever worked with GameMaker: Studio? Simplex is aiming to provide a modern, modular, GM:S like environment. Define objects, override events, assign actions, place instances into the room editor. You know the drill. We are taking this intuitive workflow to the next level. Learn how.

Unique value

Room editor runs in 60 fps and all objects are equipped with an additional set of in-editor events. That means you can do anything right in the room editor. From simple stuff like changing ImageIndex on runtime to physical simulation. Anything, rendered via DirectX12, 3D accelerated.

SGML aka GML++

Do you like Game Maker's scripting language as much as we do? So simple to use, right? We are taking GML where noone before - function by function we've implemented almost entire GML into C#, improving each and every function where possible. Ever wondered why draw_rectangle has no angle argument, why instance_find don't accept a predicate or why you can't set shape nor opacity of the game window? Use modern C# constructs and simple GML actions side by side.

All the editors you are used to

Manage all your resources easily with our code, sprites, audio and room editor. Modern looking, dark themed, multi-display aware, ready for 8k forms. Several times faster project loading, using less memory and processing time, utilizing .net framework 4.8

Every single inch modular

Ever wanted to modify right-click instance menu in the room editor? Pair automapping with masks generation, visually edit attributes? We hear you, taking all you know from GMS one step further.

Source control ready

Develop in teams and fear of the merge conflicts not. Simple, efficient project structure allows for painless source control and continuous integration.

Ready?

Visit the manual to get started.

Other projects by us

Built with ❤️ by SimplexEngine development team, 2019. Check our Hall Of Fame

simplexrpgengine's People

Contributors

cryoeagle avatar drewmccluskey avatar filiop avatar lofcz avatar quakemann64 avatar turbomost avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

simplexrpgengine's Issues

Build version in unusable

Hey, got tried the engine and here are the bugs that are making this build unusable -

Left-click makes weird things (b&W screen)
It doesnt run fullscreen
There is no 'attack" action on any button
The collision boxes are permanently shown as red squares

Problém s infoboxem equipmentu

Pokud je kurzor myši držen na libovolném equiplém předmětu a inventář je zavřen (i), textura infoboxu zůstane otevřená.

Přiřazuji pro @VaclavVal

Migrate to c# 8 & .net core 3

As soon as there are public VS 2019 preview builds available, we will migrate to c# 8. From my quick research this should only involve rebuilding NuGets. No breaking changes.

Seznam funkcí z winApi k portnutí

  • CPU / GPU / RAM využití ✔️
  • Video přehrávač ✔️
  • Externí okna ✔️
  • Procesy ✔️
  • Nonsandboxed souborový systém ✔️
  • Manipulace s desktopem ✔️

Random Bug

Při testování Enginu, konkrétně při spellech došlo po zmáčknutí klávesy "J" k následujícímu erroru:


FATAL ERROR in
action number 1
of Draw Event
for object oHUD:

undefined value
at gml_Script_scrAffectsUpdate (line 81) - draw_ring_part(xxx, yyy, 16*scale, 4, 64, 64, 90, (oPlayer.statusTimeList[| i] / time) * 360, true, oPlayer.statusColorList[| i], true);

stack frame is
gml_Script_scrAffectsUpdate (line 81)
called from - gml_Object_oHUD_DrawEvent_1 (line 9) - scrAffectsUpdate();

Nejsem si jistý, kdy přesně se toto děje, ale když narážím do slimáků a u toho používám spell "J" tak se občas stane, že se toto napíše...

Optimalizovat komponentu Gore

Gore komponenta je výpočetně velmi náročná, výsledky přes yyc jsou nicméně přijatelné.
Komponentu je potřeba optimalizovat cca na 1/2 * O(x)

Odhozená věc nelze znovu vzít

Při odhození libovolné věci na zem, tak po ovpětovném pokusu o sebrání odhozeného předmětu (při kolizi s odhozeným předmětem) dojde k chybě:


FATAL ERROR in
action number 1
of Step EventoPlayer
for object oBasicItem:

Push :: Execution Error - Variable Get 100289.itm_materialType(100252, -2147483648)
at gml_Script_inventoryPickUpParam (line 39) - oInventory.slot[free_slot,inv_item_materialType] = itm_materialType;

stack frame is
gml_Script_inventoryPickUpParam (line 39)
called from - gml_Script_inventoryPickUp (line 53) - inventoryPickUpParam(1);
called from - gml_Object_oBasicItem_CollisionEvent_0_1 (line 3) - inventoryPickUp();

draw_

Draw Simple Shapes

  • ✔️draw_arrow
  • ✔️draw_circle --> added optional arg thickness
  • ✔️draw_circle_color
  • 💡 draw_circle_fast
  • ✔️draw_ellipse
  • draw_ellipse_color
  • ✔️draw_line
  • ✔️draw_line_color
  • ✔️draw_line_width
  • ✔️draw_line_width_color
  • ✔️draw_point
  • ✔️draw_point_color
  • ✔️ draw_rectangle
// GM classic
draw_rectangle(x1, y1, x2, y2, outline)

// Simplex vector standard
draw_rectangle(vec2 position, vec2 size, bool outline)

// Possible extensions
draw_rectangle(vec2 position, vec2 size, bool outline, float lineSize)
draw_rectangle(vec2 position, vec2 size, bool outline, float lineSize, float angle)
draw_rectangle(x1, y1, x2, y2, bool outline, float lineSize)
draw_rectangle_ext(x1, y1, x2, y2, bool outline, float lineSize, float originX, float originY, float width, float height, float angle)
  • draw_rectangle_color
    Let's stick with color for sake of consistency with System.Drawing.Color

  • ✔️draw_roundrect

  • draw_roundrect_color

  • draw_roundrect_ext

  • draw_roundrect_color_ext

  • ✔️draw_triangle

  • draw_triangle_color

Draw Extra

  • draw_set_circle_precision
  • draw_button
  • draw_healthbar
  • draw_path

Sprites

  • ✔️ draw_self
  • ✔️draw_sprite
  • draw_sprite_ext
  • draw_sprite_general
  • draw_sprite_part
  • draw_sprite_part_ext
  • draw_sprite_stretched
  • draw_sprite_stretched_ext
  • draw_sprite_pos
  • draw_sprite_tiled
  • draw_sprite_tiled_ext

Backgrounds

  • draw_background
  • draw_background_ext
  • draw_background_part
  • draw_background_part_ext
  • draw_background_stretched
  • draw_background_stretched_ext
  • draw_background_tiled
  • draw_background_tiled_ext
  • draw_background_general

Primitives

  • draw_primitive_begin
  • draw_primitive_begin_texture
  • draw_primitive_end
  • draw_vertex
  • draw_vertex_color
  • draw_vertex_texture
  • draw_vertex_texture_color

Surfaces

  • draw_surface
  • draw_surface_ext
  • draw_surface_part
  • draw_surface_part_ext
  • draw_surface_stretched
  • draw_surface_stretched_ext
  • draw_surface_tiled
  • draw_surface_tiled_ext
  • draw_surface_general

SWF

  • draw_enable_swf_aa
  • draw_set_swf_aa_level
  • draw_get_swf_aa_level

Skeleton

  • draw_skeleton
  • draw_skeleton_collision
  • draw_skeleton_time

Text

  • draw_set_font
  • draw_set_halign
  • draw_set_valign
  • ✔️draw_text
  • draw_text_ext
  • draw_text_color
  • draw_text_transformed
  • draw_text_ext_color
  • draw_text_ext_transformed
  • draw_text_transformed_color
  • draw_text_ext_transformed_color
  • draw_highscore

Color and Blending

  • draw_clear
  • draw_clear_alpha
  • ✔️ draw_set_alpha
    As XNA4 defaults with premultiplied alpha (can be turned off but why would we cast byte->double on each batch), we will use this inner implementation. Therefore:
/*old*/ Color c = new Color(255, 0, 0, 128) // red, half alpha 
/*new*/ Color c = new Color(255, 0, 0, 255) * 0.5f // same output
  • ✔️ draw_set_color

  • draw_set_color_write_enable

  • draw_set_blend_mode

  • draw_set_blend_mode_ext

  • draw_set_alpha_test

  • draw_set_alpha_test_ref_value

  • draw_get_alpha_test

  • draw_get_alpha_test_ref_value

  • draw_enable_alphablend

  • ✔️draw_get_alpha

  • ✔️draw_get_color

  • draw_get_valign

  • draw_get_halign

Textures

  • texture_get_width
  • texture_get_height
  • texture_get_texel_width
  • texture_get_texel_height
  • texture_set_interpolation
  • texture_set_interpolation_ext
  • texture_set_blending
  • texture_set_repeat
  • texture_set_repeat_ext
  • texture_set_stage
  • texture_global_scale

Other

  • draw_texture_flush
  • draw_enable_drawevent

Possible to add

  • draw_curve
  • draw_curve_color
  • draw_curve_width
  • draw_curve_width_color

Tooltip itemů

Momentální tooltip itemů se zobrazuje pouze pokud je otevřený inventář. Většina uživatelů je zvyklá že se tooltip zobrazuje na pozici kurzoru myši pokud je nad itemem přehlednější přístup k informacím.

Celý rámeček tooltipu by mohl být tzv. Easy to Customizable.
Složený ze spritu. Sprit velikosti třebas 48x48 a byl by flexibilní, přizpůsoboval by se velikosti tooltipu.

Přidat hotbar pro itemy

Nejspíše tříslotový hotbar pro uchovávání předmětů rychlé spotřeby (lektvary atp.)

Reflect needed types for serialization

DrawTest.cs requires derived types to be enumerated before XML can work with them as an array of extra types. Using reflection, generate needed data onLoad to avoid need of appending them by hand

Spell menu

Je potřeba vytvořit spell menu, kde si hráč může nastavit kouzla "j", "k", "l". Je možné recyklovat komponentu talentMenu. Přiřazuji pro @VaclavVal

Deník

Easter egg "fappovníček"

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.