YimMenu icon indicating copy to clipboard operation
YimMenu copied to clipboard

Add Dance Mode into YimMenu.

Open Adler-D3R opened this issue 3 years ago • 6 comments

Is your feature request related to a problem? Please describe. No, it isn't.

Describe the solution you'd like I'd like to implement a system that allow the character to dance, the same way and dances that in Cayo Island/Nigthtclub.

Provide Reasoning That's kind of fun and satisfying. It's not really an important feature of course, but that's still something other mods don't have.

Additional context I'm wondering if we should just trigger the " Dance Mode ", so that we are dancing like in Cayo, with controls enabled and everything, or just do animations that loads the anim dict, and just play it. (Option 1 would be better, but maybe harder)

Adler-D3R avatar Mar 26 '22 10:03 Adler-D3R

I started searching, and found some interesting things both am_mp_nightclub.c and am_mp_island.c scripts. Both have this function (the name isn't the same for both) :

{
	switch (iParam0)
	{
		case 0:
			*uParam1 = "PIMNCLDANSTY0";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@FEMALE@VAR_A";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@FEMALE@VAR_A@";
			break;
		
		case 1:
			*uParam1 = "PIMNCLDANSTY1";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@FEMALE@VAR_B";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@FEMALE@VAR_B@";
			break;
		
		case 2:
			*uParam1 = "PIMNCLDANSTY2";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@MALE@VAR_B";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@MALE@VAR_B@";
			break;
		
		case 3:
			*uParam1 = "PIMNCLDANSTY3";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@MALE@VAR_A";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@MALE@VAR_A@";
			break;
		
		case 4:
			*uParam1 = "PIMNCLDANSTY4";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@JUMPER";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@JUMPER@";
			break;
		
		case 5:
			*uParam1 = "PIMNCLDANSTY5";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@TECHNO_MONKEY";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@TECHNO_MONKEY@";
			break;
		
		case 6:
			*uParam1 = "PIMNCLDANSTY6";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@SHUFFLE";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@SHUFFLE@";
			break;
		
		case 7:
			*uParam1 = "PIMNCLDANSTY7";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@TECHNO_KARATE";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@TECHNO_KARATE@";
			break;
		
		case 8:
			*uParam1 = "PIMNCLDANSTY8";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@BEACH_BOXING";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@BEACH_BOXING@";
			break;
		
		case 9:
			*uParam1 = "PIMNCLDANSTY9";
			uParam1->f_1 = "NIGHTCLUB@DANCE_MINIGAME@DANCE_SOLO@SAND_TRIP";
			uParam1->f_2 = "ANIM@AMB@NIGHTCLUB@MINI@DANCE@DANCE_SOLO@SAND_TRIP@";
			break;
		
		default:
			return 0;
	}
	return 1;
}`

Adler-D3R avatar Mar 26 '22 10:03 Adler-D3R

You're thinking of an animation menu practically which once openvhook is implemented you can just co load menyoo for the big animation list. my fork has it implemented but lots of other messy stuff so i wouldn't suggest using it for that unless you just want to co load menyoo for now until its added on main branch

GibsonHF avatar Mar 26 '22 14:03 GibsonHF

Loading menyoo online is detected because it uses the "old" model spawn bypass, detected natives, frame flags etc.

maybegreat48 avatar Mar 26 '22 14:03 maybegreat48

Never had an issue myself and been using it for about 2 years or better

GibsonHF avatar Mar 26 '22 14:03 GibsonHF

Detected doesn't mean being at risk of a ban, it means admins might be able to see in your session that you're cheating, as well as other mod menu's that listen on these events.

Yimura avatar Mar 26 '22 14:03 Yimura

For most detections what actually happens is the server sets a flag on your account for each detection vector you trip. If you collect enough of these flags even earning 1 million may get your account banned.

On topic: For option 1 you can load the nightclub script and edit its bytecode to remove most of the stuff that gets called on tick and just keep the dance loop function. Easier said than done though

maybegreat48 avatar Mar 26 '22 14:03 maybegreat48

Closing in favor of #187

GeopJr avatar Oct 19 '22 21:10 GeopJr