Skip to content

Commit 4319aeb

Browse files
authored
Merge branch 'HDR-Development:dev' into mewtwo-tp-jump
2 parents dc748f7 + 41064e4 commit 4319aeb

File tree

125 files changed

+2313
-1670
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+2313
-1670
lines changed

Cargo.toml

+1-5
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[workspace]
2-
members = ["crates/*", "dynamic", "fighters/*", "hdr-macros", "utils"]
2+
members = ["dynamic", "fighters/*", "hdr-macros", "utils"]
33

44
resolver = "2"
55

@@ -226,10 +226,6 @@ smashline.workspace = true
226226
skyline-web = { workspace = true, optional = true }
227227
utils.workspace = true
228228

229-
[build-dependencies]
230-
build-tools = { path = "crates/build-tools" }
231-
hdr-macros.workspace = true
232-
233229
[features]
234230
default = [
235231
"bayonetta",

build.rs

-15
This file was deleted.

crates/build-tools/Cargo.toml

-12
This file was deleted.

crates/build-tools/src/lib.rs

-48
This file was deleted.

crates/build-tools/src/main.rs

-7
This file was deleted.

dynamic/src/consts.rs

+14-1
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,12 @@ pub mod vars {
525525
pub mod edge {
526526
pub mod instance {
527527
// flags
528-
pub const SPECIAL_HI_BLADE_DASH_NO_HITBOX: i32 = 0x1000;
528+
pub const SPECIAL_HI_BLADE_DASH_NO_HITBOX: i32 = 0x0100;
529+
}
530+
pub mod status {
531+
// flags
532+
pub const FLASH_HOLD: i32 = 0x1101;
533+
pub const SPECIAL_N_FIRE: i32 = 0x1102;
529534
}
530535
}
531536

@@ -672,6 +677,8 @@ pub mod vars {
672677
pub use super::super::luigi::status::THUNDERHAND;
673678
pub use super::super::mariod::status::CHILL_PILL;
674679
pub const MINING_TIMER: i32 = 0x11F4;
680+
pub const KO_PUNCH_GRAVITY: i32 = 0x11F5;
681+
pub const KO_PUNCH_GRAVITY_END: i32 = 0x11F6;
675682
}
676683
}
677684

@@ -903,6 +910,12 @@ pub mod vars {
903910
// flags
904911
pub const SPECIAL_HI_CANCEL_ESCAPE_AIR: i32 = 0x0100;
905912
}
913+
pub mod status {
914+
// flags
915+
pub const SPECIAL_S_PIKMIN_DETONATE_IS_ATTACK_LAST_FRAME: i32 = 0x1100;
916+
// ints
917+
pub const SPECIAL_S_PIKMIN_DETONATE_TIMER: i32 = 0x1101;
918+
}
906919
}
907920

908921
pub mod ptrainer {

dynamic/src/util.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -234,13 +234,13 @@ pub fn get_game_state() -> *const u64 {
234234

235235
pub unsafe fn get_mapped_controller_inputs_from_id(player: usize) -> &'static MappedInputs {
236236
let base = *((skyline::hooks::getRegionAddress(skyline::hooks::Region::Text) as *mut u8)
237-
.add(0x52c30f0) as *const u64);
237+
.add(0x52c50f0) as *const u64);
238238
&*((base + 0x2b8 + 0x8 * (player as u64)) as *const MappedInputs)
239239
}
240240

241241
pub unsafe fn get_controller_mapping_from_id(player: usize) -> &'static ControllerMapping {
242242
let base = *((skyline::hooks::getRegionAddress(skyline::hooks::Region::Text) as *mut u8)
243-
.add(0x52c30f0) as *const u64);
243+
.add(0x52c50f0) as *const u64);
244244
&*((base + 0x18) as *const ControllerMapping).add(player as usize)
245245
}
246246

@@ -252,7 +252,7 @@ struct SomeControllerStruct {
252252

253253
pub unsafe fn get_controller_from_id(player: usize) -> &'static Controller {
254254
let base = *((skyline::hooks::getRegionAddress(skyline::hooks::Region::Text) as *mut u8)
255-
.add(0x5337860) as *const u64);
255+
.add(0x5339860) as *const u64);
256256
let uVar3 = *((base + 0x298 + (4 * (player as u64))) as *const u32);
257257
let controller_struct = ((base + (0x8 * (uVar3 as i32)) as u64) as *mut SomeControllerStruct);
258258
(*controller_struct).controller

fighters/build.rs

-45
This file was deleted.

fighters/captain/src/acmd/aerials.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -198,13 +198,13 @@ unsafe fn captain_attack_air_hi_game(fighter: &mut L2CAgentBase) {
198198
}
199199
frame(lua_state, 6.0);
200200
if is_excute(fighter) {
201-
ATTACK(fighter, 0, 0, Hash40::new("legl"), 13.0, 361, 86, 0, 30, 5.25, 3.2, 2.1, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
202-
ATTACK(fighter, 1, 0, Hash40::new("kneel"), 12.0, 361, 88, 0, 29, 5.75, 5.8, 0.9, -0.4, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
201+
ATTACK(fighter, 0, 0, Hash40::new("legl"), 13.0, 361, 86, 0, 30, 4.25, 3.2, 2.1, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
202+
ATTACK(fighter, 1, 0, Hash40::new("kneel"), 12.0, 361, 88, 0, 29, 4.75, 5.8, 0.9, -0.4, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
203203
}
204204
frame(lua_state, 11.0);
205205
if is_excute(fighter) {
206-
ATTACK(fighter, 0, 0, Hash40::new("legl"), 11.0, 30, 70, 0, 15, 5.25, 3.2, 2.1, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
207-
ATTACK(fighter, 1, 0, Hash40::new("kneel"), 10.0, 30, 70, 0, 15, 5.75, 5.8, 0.9, -0.4, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
206+
ATTACK(fighter, 0, 0, Hash40::new("legl"), 11.0, 30, 70, 0, 15, 4.25, 3.2, 2.1, 0.0, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
207+
ATTACK(fighter, 1, 0, Hash40::new("kneel"), 10.0, 30, 70, 0, 15, 4.75, 5.8, 0.9, -0.4, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_POS, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
208208
}
209209
wait(lua_state, 3.0);
210210
if is_excute(fighter) {

fighters/cloud/src/acmd/tilts.rs

+7-7
Original file line numberDiff line numberDiff line change
@@ -98,19 +98,19 @@ unsafe fn cloud_attack_hi3_expression(fighter: &mut L2CAgentBase) {
9898
unsafe fn cloud_attack_lw3_game(fighter: &mut L2CAgentBase) {
9999
let lua_state = fighter.lua_state_agent;
100100
let boma = fighter.boma();
101-
sv_kinetic_energy!(set_speed_mul, fighter, FIGHTER_KINETIC_ENERGY_ID_MOTION, 0.8);
101+
sv_kinetic_energy!(set_speed_mul, fighter, FIGHTER_KINETIC_ENERGY_ID_MOTION, 0.92);
102102
frame(lua_state, 8.0);
103103
if is_excute(fighter) {
104-
ATTACK(fighter, 0, 0, Hash40::new("legr"), 7.0, 80, 80, 0, 45, 3.0, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
105-
ATTACK(fighter, 1, 0, Hash40::new("kneer"), 7.0, 80, 80, 0, 45, 3.5, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
106-
ATTACK(fighter, 2, 0, Hash40::new("kneer"), 7.0, 80, 80, 0, 45, 4.0, 6.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
104+
ATTACK(fighter, 0, 0, Hash40::new("legr"), 7.0, 70, 80, 0, 45, 3.0, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
105+
ATTACK(fighter, 1, 0, Hash40::new("kneer"), 7.0, 70, 80, 0, 45, 3.5, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
106+
ATTACK(fighter, 2, 0, Hash40::new("kneer"), 7.0, 70, 80, 0, 45, 4.0, 6.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_M, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
107107
AttackModule::set_attack_height_all(boma, app::AttackHeight(*ATTACK_HEIGHT_LOW), false);
108108
}
109109
frame(lua_state, 12.0);
110110
if is_excute(fighter) {
111-
ATTACK(fighter, 0, 0, Hash40::new("legr"), 6.0, 78, 80, 0, 45, 2.0, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
112-
ATTACK(fighter, 1, 0, Hash40::new("kneer"), 6.0, 78, 80, 0, 45, 2.5, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
113-
ATTACK(fighter, 2, 0, Hash40::new("kneer"), 6.0, 78, 80, 0, 45, 3.0, 6.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
111+
ATTACK(fighter, 0, 0, Hash40::new("legr"), 6.0, 70, 80, 0, 45, 2.0, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
112+
ATTACK(fighter, 1, 0, Hash40::new("kneer"), 6.0, 70, 80, 0, 45, 2.5, 0.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
113+
ATTACK(fighter, 2, 0, Hash40::new("kneer"), 6.0, 70, 80, 0, 45, 3.0, 6.0, -1.0, 1.5, None, None, None, 1.0, 1.0, *ATTACK_SETOFF_KIND_ON, *ATTACK_LR_CHECK_F, false, 0, 0.0, 0, false, false, false, false, true, *COLLISION_SITUATION_MASK_GA, *COLLISION_CATEGORY_MASK_ALL, *COLLISION_PART_MASK_ALL, false, Hash40::new("collision_attr_normal"), *ATTACK_SOUND_LEVEL_S, *COLLISION_SOUND_ATTR_KICK, *ATTACK_REGION_KICK);
114114
}
115115
frame(lua_state, 20.0);
116116
if is_excute(fighter) {

fighters/common/src/function_hooks/attack.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use std::arch::asm;
44
use utils::game_modes::CustomMode;
55

66

7-
#[skyline::hook(offset = 0x3dc160)]
7+
#[skyline::hook(offset = 0x3dc180)]
88
unsafe fn attack_module_set_attack(module: u64, id: i32, group: i32, data: &mut smash2::app::AttackData) {
99
let boma = *(module as *mut *mut BattleObjectModuleAccessor).add(1);
1010

@@ -50,7 +50,7 @@ unsafe fn attack_module_set_attack(module: u64, id: i32, group: i32, data: &mut
5050
call_original!(module, id, group, data)
5151
}
5252

53-
#[skyline::hook(offset = 0x403c1c, inline)]
53+
#[skyline::hook(offset = 0x403c3c, inline)]
5454
unsafe fn get_damage_frame_mul(ctx: &mut skyline::hooks::InlineCtx) {
5555
match utils::game_modes::get_custom_mode() {
5656
Some(modes) => {

0 commit comments

Comments
 (0)