Spell Duel (Placeholder Name) - Looking for 1 or 2 interested developers

KitoedKitoed Posts: 7Member
edited February 3 in Projects

VIDEO REMOVED, OUTDATED

Hey guys, in the video I pretty much explained everything, but here is a short tl;dr;

  • 2d static arena game with spells, buffs, debuffs, classes
  • 2v2/3v3/???
  • Animations like in hearthstone: Example "Arcane Missiles" flying toward one enemy avatar or Fireball doing that
  • Quick Real Time Match taking 5-15 Minutes, for quick fun while waiting for other stuff or just having a quick match with friends (group system WIP)

What I accomplishedin 1 week so far:

  • Queue: Matching 4 Players into a match
  • Main Menu: Name Validation, Class Selection, Spell bar Preview, Connected player/Players in queue label, Some no copyright background sound
  • Loading into match countdown + sound
  • Main Match: Health + Ressource bars, Avatars, Spellbar for the selected class, cast bar for enemies, Targetting + target of target of enemies, End Screen Scoreboard + DamageDone/Healing Done, Some no copyright background sound
  • Spell System: Dynamic Spells loading, spell effects defining, spell targets defining, Adding spells is just as easy with that system

What I need help the most with:

  • Spell animations (Fireball flys on the enemy avatar, after spell use.... for example)
  • Look over code and tell me if thats done like that in usual godot scripts, tell me a better way (Because I come from WoW Emulation coding in c++, this one was really tough and limited in gdscript xd)
  • Any designing ideas you have on frontend or designing classes at later states
  • Frontend Button Design, Healthbar design, cast bar design... all design stuff.. I am GIMP noob x) #Me is coder, me no design#

You can become a full teammate of me and we can rise this little project idea to something playable... maybe even on Steam. (I have Stream friend who could advertise a bit when its in a playable state)

If you have any question... dont hesitate to contact me ... Discord Kito#8621 email: kito@vortexirc.com
If you are german that would be even more interesting :smiley:

Thanks for reading <3
Have nice coding sessions guys!



PS: Yes the code might be breaking alot of code conventions, that I would usually not break when coding for other projects.. but I already put a review on a todo list for the future.


Tags :

Comments

  • KitoedKitoed Posts: 7Member

    Some picture I made when I did not start yet with coding... just random pics thrown together into 1 picture to see how it could possibly look like

  • UnnamedUnnamed Posts: 37Member

    Looks interesting. I don't know if I could help much as I'm a coder myself. It's really hard to find free high quality assets that fit together, that's why I started creating my own assets years ago.
    As for spell animations it is probably easiest to to use sprites with an AnimationPlayer that does a fade in/out and move the sprites by using a Tween. A more elaborated approach would be to use particles and shaders instead of a simple sprite to create an animated fire ball or whatever.

  • KitoedKitoed Posts: 7Member

    Thanks for info @Unnamed

    I now implemented buff/debuffs (Stasis Effects, Life Swap Effects.. etc), cooldowns

    New Spell Effects are coming one by one.

    Still having 0 animations, but my friends enjoyed having a match going even without animations there was some kind of competitive feeling.

  • KitoedKitoed Posts: 7Member

    Still no animations yet, but having more enhanced Spells working + Simple Procs: On Power Use, On Cast, On Do Damage

    Who can do Animations :(

    PLACEHOLDER ICONS RIPPED FROM WORLD OF WARCRAFT!!!! JUST FOR TESTING
    All spells are working implemented.




  • UnnamedUnnamed Posts: 37Member

    You could look for free icons like these: https://opengameart.org/content/painterly-spell-icons-part-2
    I guess it's not that easy to find some good free icons. It will probably be easier to find something in a more simplistic style, like these icons I made myself: https://opengameart.org/content/rpg-icons-3.

    Well, I think I can help you with animations if you don't manage to do that yourself. As reference, here is a fireball I made: https://imgur.com/a/qgOCrZS.

    It looks like there is no spell to summon skeletons in the necromancer screenshot. That's somewhat mandatory, isn't it? ;)

  • KitoedKitoed Posts: 7Member

    I contacted you, check your PMs.

    The game has changed alot from the video above... I made debuff/buff bar + timer for that, tooltips on all icons, select spells for your class...

    Next big thing will be a complete clean up of code + using correct global classes for classes like players, match, spells, auras, cooldown-management etc.

  • KitoedKitoed Posts: 7Member
    edited February 3

    3rd February 2019

    Changed a lot from then to now!!!

    The game is getting somewhere, still many copyright icons ( which will be replaced of course) and a silly main match background (which will also be changed)... but slowly but surely we are getting somewhere.

    Spells have proc system, effect system, targetting systems... I can easily add new target types, spell types, procs etc due to a very generic system I made....
    Animations can be made just like that and will be loaded dynamically, sounds can easily be attached to each spell

    You cannot hear any sounds yet... dunno why it didnt record them.

    Videos:

    Main Menu:
    https://www.dropbox.com/s/grt3m5g44ol3kjz/Lj9sFVdh67.mp4?dl=0

    Fight:
    https://www.dropbox.com/s/8ubp8jg6ddj8q38/6nYhj9hAVe.mp4?dl=0

  • KitoedKitoed Posts: 7Member
    edited February 3

    3rd February 2019

    Example spell:

    I explained it in like but you can see all the stuff i made so far on the bottom. Making it easy to implement new spells and mechanics for players to have fun :smile:

    { "spell_id": "15", "spell_name": "Frozen Assault", "spell_cost": "25", "spell_desc": "For the next 7 seconds, shoot a frostbolt at a random enemy every 1 second. Each frostbolt [color=#F63100]deals 50 damage[/color] and applies [color=#3175e2]Slowed (Status Effect)[/color].\n\n[color=#3175e2]Slowed[/color] enemies [color=#F63100]cast spells 25% slower[/color] for 1 seconds. Each frostbolt counts a single-target spell.", "spell_icon": "res://Interface/Icons/Mage/Mage_Frost_Needles.jpeg", "spell_animation":"", "spell_sound": "", "spell_cast_time": "1.0", "spell_cooldown": "10.0", "spell_flags": "0", "spell_missile_time": "0.0", "spell_category": "1", "spell_effects": [ { "effect": "3", <---- apply aura "amount": "16.0", <---- which spell to trigger "amount2": "0.0", "amount3": "0.0", "target": "5", <---- target caster "periodic": "1.0", "duration": "7.0", "auraEffect": "7" <---- periodic trigger spell on top } ] }, { "spell_id": "16", <---- our spell to trigger "spell_name": "Frozen Assault", "spell_cost": "0", "spell_desc": "For the next 7 seconds, shoot a frostbolt at a random enemy every 1 second. Each frostbolt [color=#F63100]deals 50 damage[/color] and applies [color=#3175e2]Slowed (Status Effect)[/color].\n\n[color=#3175e2]Slowed[/color] enemies [color=#F63100]cast spells 25% slower[/color] for 1 seconds. Each frostbolt counts a single-target spell.", "spell_icon": "res://Interface/Icons/Mage/Mage_Frost_Needles.jpeg", "spell_animation":"res://Animation/Frostbolt_minimal/frostbolt.tscn", "spell_sound": "", "spell_cast_time": "0.0", "spell_cooldown": "0.0", "spell_flags": "0", "spell_missile_time": "1.2", "spell_category": "0", "spell_effects": [ { "effect": "1", <---- deal damage "amount": "50.0", <---- 50 damage "amount2": "0.0", "amount3": "0.0", "target": "8", <---- random enemy "periodic": "0.0", "duration": "0.0", "auraEffect": "0" }, { "effect": "3", <---- apply aura "amount": "25.0", <---- -25% cast speed aka 25% more cast time "amount2": "0.0", "amount3": "0.0", "target": "9", <---- inherit target from first effect "periodic": "0.0", "duration": "1.0", "auraEffect": "9" <---- mod cast time aura } ] }

    `enum spellEffects {
    SPELL_EFFECT_DUMMY = 0,
    SPELL_EFFECT_DAMAGE = 1,
    SPELL_EFFECT_HEAL = 2,
    SPELL_EFFECT_APPLY_AURA = 3,
    SPELL_EFFECT_SWAP_HEALTH = 4,
    SPELL_EFFECT_INTERRUPT = 5,
    SPELL_EFFECT_TRIGGER_SPELL = 6,
    SPELL_EFFECT_REMOVE_DEBUFF = 7,
    SPELL_EFFECT_REMOVE_ALL_BUFFS = 8,
    SPELL_EFFECT_DAMAGE_PCT_HP = 9
    }

    enum spellCategory {
    SPELL_CATEGORY_NONE = 0,
    SPELL_CATEGORY_OFFENSIVE = 1,
    SPELL_CATEGORY_DEFENSIVE = 2,
    SPELL_CATEGORY_UTILITY = 4,
    SPELL_CATEGORY_AFFIX = 8
    }

    enum spellTargets {
    TARGET_DUMMY = 0,
    TARGET_ENEMY = 1,
    TARGET_FRIEND = 2,
    TARGET_AOE_ENEMY = 3,
    TARGET_AOE_FRIENDLY = 4,
    TARGET_CASTER = 5,
    TARGET_ENEMY_FRIEND = 6,
    TARGET_AOE_FRIENDLY_NOT_TARGET = 7,
    TARGET_RANDOM_ENEMY = 8,
    TARGET_INHERIT_EFFECT_0 = 9
    }

    enum auraEffects {
    AURA_EFFECT_DUMMY = 0,
    AURA_EFFECT_PERIODIC_DAMAGE = 1,
    AURA_EFFECT_PERIODIC_HEAL = 2,
    AURA_EFFECT_STASIS = 3, # Damage Immune
    AURA_EFFECT_SILENCED = 4,
    AURA_EFFECT_MOD_HEAL_RECEIVED = 5,
    AURA_EFFECT_ON_ENERGY_USE = 6,
    AURA_EFFECT_PERIODIC_TRIGGER_SPELL = 7,
    AURA_EFFECT_PERIODIC_INCREASE_AMOUNT = 8,
    AURA_EFFECT_MOD_CAST_TIME = 9, # No immediate effect
    AURA_EFFECT_MOD_SPELL_COSTS = 10,
    AURA_EFFECT_ON_CAST = 11,
    AURA_EFFECT_MOD_MANA_REGEN = 12,
    AURA_EFFECT_MOD_DMG_RECEIVED = 13,
    AURA_EFFECT_MOD_DMG_DONE = 14,
    AURA_EFFECT_MOD_HEAL_DONE = 15,
    AURA_EFFECT_ON_SPELL_HIT = 16,
    AURA_EFFECT_ON_HEAL_DONE = 17,
    AURA_EFFECT_MOD_AURA_DURATION = 18,
    AURA_EFFECT_ON_AURA_REMOVE = 19,
    AURA_EFFECT_ON_CC_TAKEN = 20
    }

    enum SpellFailReason {
    SPELL_CAST_CANCEL_SELF = 0,
    SPELL_CAST_INTERRUPTED = 1
    }

    enum SpellFlags {
    SPELL_FLAG_NONE = 0,
    SPELL_FLAG_AURA = 1,
    SPELL_FLAG_CANT_PROC = 2,
    SPELL_FLAG_NO_SELF_TARGET = 4,
    SPELL_FLAG_INHERIT_DURATION = 8,
    SPELL_FLAG_NO_LOG_STATS = 16
    }`

Sign In or Register to comment.