Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cobblemon Moveset GUI Glitch & General Non-parity Issues #8

Open
dreckz opened this issue Nov 23, 2023 · 6 comments
Open

Cobblemon Moveset GUI Glitch & General Non-parity Issues #8

dreckz opened this issue Nov 23, 2023 · 6 comments

Comments

@dreckz
Copy link

dreckz commented Nov 23, 2023

Problem Encountered:

The moves shown on the GUI when using Cobblemon Pokemon tends to be momentarily innaccurate until it finally uses an attack: (Ignore the Cobblemon gui behind Pokecubes')

  • Before Attacking:
image
  • Actual Moveset on Cobblemon PC:
image
  • In addition, this was also Reflected on the Pokecube pokedex/watch:
image image
  • In the Battle, the ACTUAL move used is Cobblemon's moveset:
image

^ This ALSO shows the misparity in levels tracked/calculated by Pokecube vs the percieved Cobblemon level

It never uses the ones seen before Attacking, which is always the ones shown in the pokecube watch, however sometimes after attacking, the Cobblemon moves will populate the list of moves on the GUI. Also noticed damaging the cobblemon pokemon outside of turnbased won't hurt its hp when it goes into turn-based (IMO is kinda good thing depending on playstyle/cheatiness)

"Plan B" Solution & Suggestion:

If you're not able make parity of movesets work properly between the two mods, I was trying to think on what can be done. I imagine this comes from movesets from both mods being read and maybe confused on which is the TRUE moveset to display on the GUI
If possible, implement a config option for player to decide on Compatibility Parity, if cobblemon is installed

#Choose Compatibility Mode with Cobblemon, if it is installed: cobblemoncompat = [CLASSIC, COBBLE, HYBRID]

Here are the definitions of each:

  • CLASSIC

Moveset displayed on GUI is Based on Pokecube Moveset.

  • COBBLE

Moveset displayed on the GUI is Based on the Cobblemon Moveset

  • HYBRID

Moveset displayed on the GUI is Based on either one, as this option forces parity between the 2 mods to make changing a moveset on the pokecube side, also changes it on the cobblemon side

In addition, there might be some really nice little QoL's to associate with these that may be additional controls:

  • Option for which pokemon trainers/gyms in the world will use
  • Option for which pokemon spawn from raids
  • Option for Professor Oak's Starter Selection to be cobblemon
  • Option for Legendary Spawns
  • Option for Parity between Turn-based Battle and Real-time Battle Pokemob HP
  • Option for Disabling Either Mod's Pokemobs
  • Option for Disabling Recall from a Pokecube/Cobblemon (I found a duplication glitch when attempting to recall the cobblemob, possibly due to pokecube detecting its a pokecube and the reacall button was the same one
  • Option for disabling items/pokeballs from either mod
  • Option for Disabling the Pokecube GUI Elements (Hide Pokecube target, battle log, etc.)

Truly, Thank you for looking into this!

MC Version: 1.20.1
Forge: 47.2.6
Pokecube Compat: 1.0.5
Pokecube: 3.24.0.d
Cobblemon: 1.4.0
Only Pokecube, Compat, and Cobblemon are the only mods on this test modpack

Side Note:

_Let me say, this is a truly pinnacle and pivotal point in all of the history of Pokemon in Minecraft history... the Convergence of RTS and TBS...

In the modpack I've been creating, I'm currently trying to implement a system that takes full advantage of the beautiful Mechanics, RTS Battle System, and Worldgen provided by pokecube, but replace pokecube mobs with the Cobblemon mobs in order to take full advantage of being able to turn based battle as well. I found the freedom to be able to CHOOSE if you want to RTS battle or TURN BASED battle to be such a PERFECT synergy of Pokemon in Minecraft. Getting the best of both worlds of mowing down zombies while taking a quick breather to approach a special pokemon i find more methodically with turn based.

I'm currently working around a lot of what Pokecube implements by disabling parts and keeping it to cobblemon to do all the pokemon spawning. Ideally, making the experience flush to a point to where the casual gamer can't tell the differernce between the two mods. I found this works wonderfullly and have been enjoying the ability to choose a quick battle or be more methodical.

This mod compat with Pokecube and Cobblemon is HUGE IMO and I think this is what's TRULY going to make pokecube explode alongside Cobblemon, as if it adds much more depth and capability alongside cobblemon. It's literally the best way to play pokemon while in an open world, and tbh i would NOT be surprised if we saw the actual franchise implement something similar XD_

@dreckz dreckz changed the title Cobblemon Moveset GUI Glitch - Non-parity Cobblemon Moveset GUI Glitch & General Non-parity Issues Nov 23, 2023
@Thutmose
Copy link
Member

Note that pokecube turn based can be done entirely with a server-side addon.

There are events for the following:

Preventing attack use (ie pause real time)
Preventing status effect damage
Listening for player attack orders
Replacing AI tasks (This addon uses these events to add only the real-time AI for cobblemobs and not the rest of the AI)

These can be used to queue the attacks more appropriately.

The moves parity issue is fixed in the code so far, just not released to curseforge yet. I am looking into the issue where when yours faints it leaves a client side ghost behind. As for the levelling up part, I have not yet set it to sync exp back towards cobblemon, hence that not working atm.

@dreckz
Copy link
Author

dreckz commented Nov 23, 2023

That's wonderful news about the addon possibility!

Also great to hear the move parity is fixed, excited for that update. 👍

As for the level parity issue, I wonder if there's a way to create an event that rewards both cobblemon and pokecube systems at the same time when either event occurs. Once that's made i think most issues I encountered are fixed.

At the moment, I'm making Pokecube kind of automatically choose attacks and hiding the GUI for a "light" pokemon pet system that doesn't add UI to the base version (obviously up to user configuration). I've not encountered the java issue so far with my configurations, so hopefully I can assist with bugfixes on some of these things

  • The modpack is based around a progression multiverse playthrough RPG pack where different mods are essentially gated or up to user configuration as they advance in the pack. So making UI's and extra functionality a gradual thing and all fit in the end is crucial.

@Thutmose
Copy link
Member

pokecube_compat-1.20.1-1.0.7.zip

See if this helps with the moves issue? Note that the jar is inside the zip, so extract it from the zip, it is zipped to allow upload into this comment

@dreckz
Copy link
Author

dreckz commented Nov 25, 2023

Loaded with latest Forge, Pokecube, and Cobblemon only, I got this Crash Report:
crash-2023-11-25_16.34.52-server.txt

Self-Diagnosis:
The crash report indicates that there's an IllegalStateException occurring due to a duplicate capability key in the Minecraft server tick loop. Specifically, the error is related to the pokecube:genetics capability.

The error is triggered by the pokecube.mod_compat.cobblemon mod at line 103 in the Impl.onEntityCaps method. This method is trying to attach capabilities, and it seems there's an issue with duplicate capability keys.

@Thutmose
Copy link
Member

Hmm, I will take a look at the dev environment, sounds like it was compiled vs the wrong version for testing, I probably need to refresh/reset the caches...

@dreckz
Copy link
Author

dreckz commented Dec 7, 2023

@Thutmose I can test the new version if available :) I love this concept and I want to help and make sure I can assist in any way

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants