Post #641 · Posted at 2026-01-13 01:56:13am 1.5 months ago
R6 | |
|---|---|
| Member | |
| 14 Posts | |
| |
| Reg. 2025-02-28 | |
DDR-WORLD-THEME-main\BGAnimations\ScreenEvaluation decorations
↓default.lua
local t = Def.ActorFrame{
StandardDecorationFromFileOptional("Footer","Footer");
LoadActor("background");
--Def.Sprite{ Texture="o4ma", InitCommand=function(s) s:FullScreen() end, };
};
local StageIndex = GAMESTATE:GetCurrentStageIndex()
local FinalStage = PREFSMAN:GetPreference("SongsPerPlay")
t[#t+1] = Def.ActorFrame{
Def.Sprite{
Texture=THEME:GetPathG("","_shared/ddr"),
InitCommand=function(s) s:zoom(0.667):xy(SCREEN_LEFT+88,_screen.t+23) end,
};
Def.Sprite{
Texture="RESULTS",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx,_screen.t+27) end,
};
Def.Sprite{
Texture="event",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx,_screen.t+56) end,
};
};
t[#t+1] = Def.ActorFrame{
Name="Jacket";
Def.Sprite{
Texture="base",
InitCommand=function(s) s:setsize(149,189):xy(_screen.cx,_screen.cy-77) end,
};
Def.Sprite{
Texture="rocket",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx+64,_screen.cy+5) end,
};
Def.Sprite {
OnCommand=function(s)
local song; if GAMESTATE:IsCourseMode() then song = GAMESTATE:GetCurrentCourse() else song = GAMESTATE:GetCurrentSong(); end
if GAMESTATE:IsCourseMode() then
s:Load(song:GetBannerPath()):zoomto(290,52):xy(_screen.cx+3,_screen.cy-114)
else
s:Load(GetJacketPath(song)):setsize(141,141):xy(_screen.cx,_screen.cy-97)
end
end;
};
Def.BitmapText{
Font="_swis721 blk bt 28px",
InitCommand=function(s) s:xy(_screen.cx-70,_screen.cy-8):maxwidth(310):zoom(0.4):halign(0)
local song = GAMESTATE:GetCurrentSong()
local course = GAMESTATE:GetCurrentCourse()
if GAMESTATE:IsCourseMode() then
s:settext(GAMESTATE:GetCurrentCourse() and GAMESTATE:GetCurrentCourse():GetDisplayFullTitle() or "")
else
s:settext(GetSongName(song))
end
end,
};
Def.BitmapText{
Font="_swis721 blk bt 28px",
InitCommand=function(s) s:xy(_screen.cx-70,_screen.cy+6):wrapwidthpixels(650):zoom(0.2):halign(0)
local song = GAMESTATE:GetCurrentSong()
if not GAMESTATE:IsCourseMode() then
s:settext(GetArtistName(song))
end
end,
};
};
for _,pn in pairs(GAMESTATE:GetEnabledPlayers()) do
t[#t+1] = Def.ActorFrame{
Name="Player";
Def.Sprite{
Texture=THEME:GetPathG("Premium","Customizer/appeal/eval/appeal_board_0002_result"),
InitCommand=function(s) s:zoom(0.667):y(_screen.t+47.5)
s:x(pn==PLAYER_1 and _screen.cx-192 or _screen.cx+192)
end,
};
Def.BitmapText{
Font="_arial black cont 28px",
InitCommand=function(s)
s:maxwidth(285):diffuse(color("#ffffff")):zoom(0.5):y(_screen.t+70)
s:x(pn==PLAYER_1 and _screen.cx-195 or _screen.cx+195)
--s:horizalign(right)
if PROFILEMAN:GetNumLocalProfiles() >= 1 then
s:settext(string.upper(PROFILEMAN:GetPlayerName(pn)))
else
s:settext(pn==PLAYER_1 and "PLAYER 1" or "PLAYER 2")
end
end,
};
Def.Quad{
InitCommand=function(s)
s:diffuse(color("#00000")):diffusealpha(0.3):setsize(148.2,24)
s:xy(pn==PLAYER_1 and _screen.cx-192 or _screen.cx+192,_screen.t+90)
end,
};
Def.Sprite{
Texture="style",
InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-238 or _screen.cx+141, _screen.t+90):pause():queuecommand("Set") end,
SetCommand=function(s) s:setstate(GAMESTATE:GetCurrentStyle()== "StyleType_OnePlayerTwoSides" and 1 or 0) end,
},
Def.Sprite{
Texture="diff",
InitCommand=function(s) s:zoom(0.7):xy(pn==PLAYER_2 and _screen.cx+198 or _screen.cx-179,90):pause():queuecommand("Set") end,
SetCommand=function(s)
local steps = GAMESTATE:IsCourseMode() and GAMESTATE:GetCurrentTrail(pn) or GAMESTATE:GetCurrentSteps(pn)
local diff = steps and ToEnumShortString(steps:GetDifficulty()) or "Beginner"
local idx = {Beginner=0,Easy=1,Medium=2,Hard=3,Challenge=4,Edit=5}
s:setstate(idx[diff] or 0)
end,
},
Def.BitmapText{
Font="eval_diff",
InitCommand=function(s) s:zoom(0.285):y(_screen.t+92)
local steps = GAMESTATE:IsCourseMode() and GAMESTATE:GetCurrentTrail(pn) or GAMESTATE:GetCurrentSteps(pn)
local meter = steps:GetMeter();
local shortDiff = ToEnumShortString(steps:GetDifficulty())
local diffData = {
Beginner = { x = 136 },
Easy = { x = 169 },
Medium = { x = 146 },
Hard = { x = 157 },
Challenge = { x = 136 },
Edit = { x = 136 },
}
local data = diffData[shortDiff]
s:x(pn==PLAYER_1 and _screen.cx-data.x or 811-data.x)
if meter ~= 0 then
s:settext(meter)
end
end,
};
};
-- local IsScore = "NORMAL.png"
-- if IsEXScore() then
-- IsScore = "EX.png"
-- end
-- t[#t+1] = Def.ActorFrame{
-- InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-208 or _screen.cx+220,_screen.cy-40) end,
-- OffCommand=function(s) s:sleep(0.2):linear(0.2):diffusealpha(0) end,
-- Def.Sprite{
-- Texture=IsScore,
-- InitCommand=function(s) s:xy(-124,-36) end,
-- };
-- };
t[#t+1] = LoadActor("Grade",pn);
local pss = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn)
t[#t+1] = Def.RollingNumbers{
File="eval_score",
InitCommand=function(s)
s:zoom(0.667)
s:xy(pn==PLAYER_1 and _screen.cx-183 or _screen.cx+200,_screen.cy+16)
s:playcommand("Set")
end,
OffCommand=function(s) s:sleep(0.2):linear(0.2):diffusealpha(0) end,
SetCommand=function(s)
local score
if IsEXScore() then
score = (pss:GetPossibleDancePoints())*(pss:GetPercentDancePoints());
else
score = pss:GetScore();
end;
s:Load("RollingNumbersEvaluation"):targetnumber(score);
end,
};
if pss:GetMachineHighScoreIndex() == 0 or pss:GetPersonalHighScoreIndex() == 0 then
t[#t+1] = Def.Sprite{
Texture="RECORD",
InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-138 or _screen.cx+246,_screen.cy+34) end,
OnCommand=function(s) s:queuecommand("Light") end,
LightCommand=function(s) s:diffusealpha(1):linear(1):diffusealpha(0.4):linear(1):diffusealpha(1):queuecommand("Light") end,
};
end
-- if not ((StageIndex == FinalStage+1) or (StageIndex == FinalStage+2)) then
-- t[#t+1] = LoadActor(THEME:GetPathB("ScreenEvaluation","decorations/stars"))..{
-- InitCommand=function(s) s:xy(pn==PLAYER_1 and _screen.cx-54 or _screen.cx+278,_screen.cy-10):zoom(0.667) end,
-- OffCommand=function(s) s:sleep(0.2):linear(0.2):addx(pn==PLAYER_1 and -700 or 700) end,
-- };
-- end;
-- end;
if #GAMESTATE:GetEnabledPlayers() == 1 then
t[#t+1] = LoadActor("frame", GAMESTATE:GetMasterPlayerNumber(),PLAYER_1,(GAMESTATE:GetMasterPlayerNumber() ~= PLAYER_1))..{
InitCommand=cmd(xy,_screen.cx-172,_screen.cy+115;zoom,0.667);
};
t[#t+1] = LoadActor("frame", GAMESTATE:GetMasterPlayerNumber(),PLAYER_2,(GAMESTATE:GetMasterPlayerNumber() ~= PLAYER_2))..{
InitCommand=cmd(xy,_screen.cx+172,_screen.cy+115;zoom,0.667);
};
else
t[#t+1] = LoadActor("frame", PLAYER_1,PLAYER_1,false)..{
InitCommand=cmd(xy,_screen.cx-172,_screen.cy+115;zoom,0.667);
};
t[#t+1] = LoadActor("frame", PLAYER_2,PLAYER_2,false)..{
InitCommand=cmd(xy,_screen.cx+172,_screen.cy+115;zoom,0.667);
};
end
end;
-- if not ((StageIndex == FinalStage+1) or (StageIndex == FinalStage+2)) then
-- t[#t+1] = LoadActor(THEME:GetPathG("","_shared/stars"))..{
-- InitCommand=function(s) s:xy(_screen.cx,_screen.cy+184):zoom(0.667) end,
-- OffCommand=function(s) s:linear(0.2):diffusealpha(0) end,
-- };
-- end
-- if (GAMESTATE:HasEarnedExtraStage() and GAMESTATE:IsExtraStage()) then
-- t[#t+1] = LoadActor("Extra");
-- elseif (GAMESTATE:HasEarnedExtraStage() and GAMESTATE:IsExtraStage2()) then
-- t[#t+1] = LoadActor("Encore");
-- end
-- t[#t+1] = Def.ActorFrame{
-- Name="songinfo",
-- InitCommand=function(s) s:xy(_screen.cx,_screen.cy-40):zoom(0.667) end,
-- OffCommand=function(s) s:linear(0.2):zoomy(0) end,
-- Def.Sprite{
-- Texture=THEME:GetPathG("","_shared/song info"),
-- InitCommand=function(s) s:setsize(300,47) end,
-- };
-- };
return t;
↓grade.lua
local pn = ({...})[1]
local Award = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):GetStageAward()
local Grade = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):GetGrade()
return Def.ActorFrame{
Def.Sprite{
InitCommand=function(s)
s:player(pn):x(pn== PLAYER_1 and _screen.cx-175 or _screen.cx+205)
s:y(_screen.cy-70):zoom(0):queuecommand("Set")
end,
OnCommand=function(s) s:linear(0.2):zoom(0.667) end,
OffCommand=function(s) s:linear(0.2):zoomy(0) end,
SetCommand=function(s) s:Load(THEME:GetPathG("","Grade/"..Grade)) end,
};
Def.Sprite{
InitCommand=function(s)
s:player(pn):x(pn== PLAYER_1 and _screen.cx-176 or _screen.cx+198)
s:y(_screen.cy-12):zoom(0):queuecommand("Set")
end,
OnCommand=function(s) s:linear(0.2):zoom(0.667) end,
OffCommand=function(s) s:linear(0.2):zoomy(0) end,
SetCommand=function(s)
if (Award == "StageAward_FullComboW1") then
s:Load(THEME:GetPathG("","Grade/FullCombo_W1"))
elseif ((Award == "StageAward_SingleDigitW2")
or (Award == "StageAward_OneW2")
or (Award == "StageAward_FullComboW2")) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W2"))
elseif ((Award == "StageAward_SingleDigitW3")
or (Award == "StageAward_OneW3")
or (Award == "StageAward_FullComboW3")) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W3"))
elseif (STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):FullComboOfScore('TapNoteScore_W4')) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W4"))
end
end,
};
};
↓default.lua
local t = Def.ActorFrame{
StandardDecorationFromFileOptional("Footer","Footer");
LoadActor("background");
--Def.Sprite{ Texture="o4ma", InitCommand=function(s) s:FullScreen() end, };
};
local StageIndex = GAMESTATE:GetCurrentStageIndex()
local FinalStage = PREFSMAN:GetPreference("SongsPerPlay")
t[#t+1] = Def.ActorFrame{
Def.Sprite{
Texture=THEME:GetPathG("","_shared/ddr"),
InitCommand=function(s) s:zoom(0.667):xy(SCREEN_LEFT+88,_screen.t+23) end,
};
Def.Sprite{
Texture="RESULTS",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx,_screen.t+27) end,
};
Def.Sprite{
Texture="event",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx,_screen.t+56) end,
};
};
t[#t+1] = Def.ActorFrame{
Name="Jacket";
Def.Sprite{
Texture="base",
InitCommand=function(s) s:setsize(149,189):xy(_screen.cx,_screen.cy-77) end,
};
Def.Sprite{
Texture="rocket",
InitCommand=function(s) s:zoom(0.667):xy(_screen.cx+64,_screen.cy+5) end,
};
Def.Sprite {
OnCommand=function(s)
local song; if GAMESTATE:IsCourseMode() then song = GAMESTATE:GetCurrentCourse() else song = GAMESTATE:GetCurrentSong(); end
if GAMESTATE:IsCourseMode() then
s:Load(song:GetBannerPath()):zoomto(290,52):xy(_screen.cx+3,_screen.cy-114)
else
s:Load(GetJacketPath(song)):setsize(141,141):xy(_screen.cx,_screen.cy-97)
end
end;
};
Def.BitmapText{
Font="_swis721 blk bt 28px",
InitCommand=function(s) s:xy(_screen.cx-70,_screen.cy-8):maxwidth(310):zoom(0.4):halign(0)
local song = GAMESTATE:GetCurrentSong()
local course = GAMESTATE:GetCurrentCourse()
if GAMESTATE:IsCourseMode() then
s:settext(GAMESTATE:GetCurrentCourse() and GAMESTATE:GetCurrentCourse():GetDisplayFullTitle() or "")
else
s:settext(GetSongName(song))
end
end,
};
Def.BitmapText{
Font="_swis721 blk bt 28px",
InitCommand=function(s) s:xy(_screen.cx-70,_screen.cy+6):wrapwidthpixels(650):zoom(0.2):halign(0)
local song = GAMESTATE:GetCurrentSong()
if not GAMESTATE:IsCourseMode() then
s:settext(GetArtistName(song))
end
end,
};
};
for _,pn in pairs(GAMESTATE:GetEnabledPlayers()) do
t[#t+1] = Def.ActorFrame{
Name="Player";
Def.Sprite{
Texture=THEME:GetPathG("Premium","Customizer/appeal/eval/appeal_board_0002_result"),
InitCommand=function(s) s:zoom(0.667):y(_screen.t+47.5)
s:x(pn==PLAYER_1 and _screen.cx-192 or _screen.cx+192)
end,
};
Def.BitmapText{
Font="_arial black cont 28px",
InitCommand=function(s)
s:maxwidth(285):diffuse(color("#ffffff")):zoom(0.5):y(_screen.t+70)
s:x(pn==PLAYER_1 and _screen.cx-195 or _screen.cx+195)
--s:horizalign(right)
if PROFILEMAN:GetNumLocalProfiles() >= 1 then
s:settext(string.upper(PROFILEMAN:GetPlayerName(pn)))
else
s:settext(pn==PLAYER_1 and "PLAYER 1" or "PLAYER 2")
end
end,
};
Def.Quad{
InitCommand=function(s)
s:diffuse(color("#00000")):diffusealpha(0.3):setsize(148.2,24)
s:xy(pn==PLAYER_1 and _screen.cx-192 or _screen.cx+192,_screen.t+90)
end,
};
Def.Sprite{
Texture="style",
InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-238 or _screen.cx+141, _screen.t+90):pause():queuecommand("Set") end,
SetCommand=function(s) s:setstate(GAMESTATE:GetCurrentStyle()== "StyleType_OnePlayerTwoSides" and 1 or 0) end,
},
Def.Sprite{
Texture="diff",
InitCommand=function(s) s:zoom(0.7):xy(pn==PLAYER_2 and _screen.cx+198 or _screen.cx-179,90):pause():queuecommand("Set") end,
SetCommand=function(s)
local steps = GAMESTATE:IsCourseMode() and GAMESTATE:GetCurrentTrail(pn) or GAMESTATE:GetCurrentSteps(pn)
local diff = steps and ToEnumShortString(steps:GetDifficulty()) or "Beginner"
local idx = {Beginner=0,Easy=1,Medium=2,Hard=3,Challenge=4,Edit=5}
s:setstate(idx[diff] or 0)
end,
},
Def.BitmapText{
Font="eval_diff",
InitCommand=function(s) s:zoom(0.285):y(_screen.t+92)
local steps = GAMESTATE:IsCourseMode() and GAMESTATE:GetCurrentTrail(pn) or GAMESTATE:GetCurrentSteps(pn)
local meter = steps:GetMeter();
local shortDiff = ToEnumShortString(steps:GetDifficulty())
local diffData = {
Beginner = { x = 136 },
Easy = { x = 169 },
Medium = { x = 146 },
Hard = { x = 157 },
Challenge = { x = 136 },
Edit = { x = 136 },
}
local data = diffData[shortDiff]
s:x(pn==PLAYER_1 and _screen.cx-data.x or 811-data.x)
if meter ~= 0 then
s:settext(meter)
end
end,
};
};
-- local IsScore = "NORMAL.png"
-- if IsEXScore() then
-- IsScore = "EX.png"
-- end
-- t[#t+1] = Def.ActorFrame{
-- InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-208 or _screen.cx+220,_screen.cy-40) end,
-- OffCommand=function(s) s:sleep(0.2):linear(0.2):diffusealpha(0) end,
-- Def.Sprite{
-- Texture=IsScore,
-- InitCommand=function(s) s:xy(-124,-36) end,
-- };
-- };
t[#t+1] = LoadActor("Grade",pn);
local pss = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn)
t[#t+1] = Def.RollingNumbers{
File="eval_score",
InitCommand=function(s)
s:zoom(0.667)
s:xy(pn==PLAYER_1 and _screen.cx-183 or _screen.cx+200,_screen.cy+16)
s:playcommand("Set")
end,
OffCommand=function(s) s:sleep(0.2):linear(0.2):diffusealpha(0) end,
SetCommand=function(s)
local score
if IsEXScore() then
score = (pss:GetPossibleDancePoints())*(pss:GetPercentDancePoints());
else
score = pss:GetScore();
end;
s:Load("RollingNumbersEvaluation"):targetnumber(score);
end,
};
if pss:GetMachineHighScoreIndex() == 0 or pss:GetPersonalHighScoreIndex() == 0 then
t[#t+1] = Def.Sprite{
Texture="RECORD",
InitCommand=function(s) s:zoom(0.667):xy(pn==PLAYER_1 and _screen.cx-138 or _screen.cx+246,_screen.cy+34) end,
OnCommand=function(s) s:queuecommand("Light") end,
LightCommand=function(s) s:diffusealpha(1):linear(1):diffusealpha(0.4):linear(1):diffusealpha(1):queuecommand("Light") end,
};
end
-- if not ((StageIndex == FinalStage+1) or (StageIndex == FinalStage+2)) then
-- t[#t+1] = LoadActor(THEME:GetPathB("ScreenEvaluation","decorations/stars"))..{
-- InitCommand=function(s) s:xy(pn==PLAYER_1 and _screen.cx-54 or _screen.cx+278,_screen.cy-10):zoom(0.667) end,
-- OffCommand=function(s) s:sleep(0.2):linear(0.2):addx(pn==PLAYER_1 and -700 or 700) end,
-- };
-- end;
-- end;
if #GAMESTATE:GetEnabledPlayers() == 1 then
t[#t+1] = LoadActor("frame", GAMESTATE:GetMasterPlayerNumber(),PLAYER_1,(GAMESTATE:GetMasterPlayerNumber() ~= PLAYER_1))..{
InitCommand=cmd(xy,_screen.cx-172,_screen.cy+115;zoom,0.667);
};
t[#t+1] = LoadActor("frame", GAMESTATE:GetMasterPlayerNumber(),PLAYER_2,(GAMESTATE:GetMasterPlayerNumber() ~= PLAYER_2))..{
InitCommand=cmd(xy,_screen.cx+172,_screen.cy+115;zoom,0.667);
};
else
t[#t+1] = LoadActor("frame", PLAYER_1,PLAYER_1,false)..{
InitCommand=cmd(xy,_screen.cx-172,_screen.cy+115;zoom,0.667);
};
t[#t+1] = LoadActor("frame", PLAYER_2,PLAYER_2,false)..{
InitCommand=cmd(xy,_screen.cx+172,_screen.cy+115;zoom,0.667);
};
end
end;
-- if not ((StageIndex == FinalStage+1) or (StageIndex == FinalStage+2)) then
-- t[#t+1] = LoadActor(THEME:GetPathG("","_shared/stars"))..{
-- InitCommand=function(s) s:xy(_screen.cx,_screen.cy+184):zoom(0.667) end,
-- OffCommand=function(s) s:linear(0.2):diffusealpha(0) end,
-- };
-- end
-- if (GAMESTATE:HasEarnedExtraStage() and GAMESTATE:IsExtraStage()) then
-- t[#t+1] = LoadActor("Extra");
-- elseif (GAMESTATE:HasEarnedExtraStage() and GAMESTATE:IsExtraStage2()) then
-- t[#t+1] = LoadActor("Encore");
-- end
-- t[#t+1] = Def.ActorFrame{
-- Name="songinfo",
-- InitCommand=function(s) s:xy(_screen.cx,_screen.cy-40):zoom(0.667) end,
-- OffCommand=function(s) s:linear(0.2):zoomy(0) end,
-- Def.Sprite{
-- Texture=THEME:GetPathG("","_shared/song info"),
-- InitCommand=function(s) s:setsize(300,47) end,
-- };
-- };
return t;
↓grade.lua
local pn = ({...})[1]
local Award = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):GetStageAward()
local Grade = STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):GetGrade()
return Def.ActorFrame{
Def.Sprite{
InitCommand=function(s)
s:player(pn):x(pn== PLAYER_1 and _screen.cx-175 or _screen.cx+205)
s:y(_screen.cy-70):zoom(0):queuecommand("Set")
end,
OnCommand=function(s) s:linear(0.2):zoom(0.667) end,
OffCommand=function(s) s:linear(0.2):zoomy(0) end,
SetCommand=function(s) s:Load(THEME:GetPathG("","Grade/"..Grade)) end,
};
Def.Sprite{
InitCommand=function(s)
s:player(pn):x(pn== PLAYER_1 and _screen.cx-176 or _screen.cx+198)
s:y(_screen.cy-12):zoom(0):queuecommand("Set")
end,
OnCommand=function(s) s:linear(0.2):zoom(0.667) end,
OffCommand=function(s) s:linear(0.2):zoomy(0) end,
SetCommand=function(s)
if (Award == "StageAward_FullComboW1") then
s:Load(THEME:GetPathG("","Grade/FullCombo_W1"))
elseif ((Award == "StageAward_SingleDigitW2")
or (Award == "StageAward_OneW2")
or (Award == "StageAward_FullComboW2")) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W2"))
elseif ((Award == "StageAward_SingleDigitW3")
or (Award == "StageAward_OneW3")
or (Award == "StageAward_FullComboW3")) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W3"))
elseif (STATSMAN:GetCurStageStats():GetPlayerStageStats(pn):FullComboOfScore('TapNoteScore_W4')) then
s:Load(THEME:GetPathG("","Grade/FullCombo_W4"))
end
end,
};
};
Post #642 · Posted at 2026-01-14 11:18:15pm 1.5 months ago
VR0 | |
|---|---|
| Member | |
| 1,011 Posts | |
| |
| Reg. 2012-03-20 | |
![]() | |
| "ムーン ゴーシュス メヂィデーション" | |
Grade AAA- is abstent of official DDR games.
Replace it with generic AAA, please.
Replace it with generic AAA, please.
Post #643 · Posted at 2026-01-20 02:47:58pm 1.3 months ago
jambuddy | |
|---|---|
| Member | |
| 5 Posts | |
| Not Set | |
| Reg. 2024-05-03 | |
Amazing theme work! Really brings new life to the game to have a theme recreation this well done.
Post #644 · Posted at 2026-01-28 08:28:28am 1 month ago
MrK!NG | |
|---|---|
| Member | |
| 44 Posts | |
| Not Set | |
| Reg. 2024-12-23 | |
Quote: piotr25691
Quote: MrK!NG
I just tried the world theme
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
4 combos for shock arrows are a StepMania limitation, since the shock arrows are charted as 4 mines, and on DDR they're just one note that spans all columns. This is not a bug.
I just wonder what options did Yuisin use for that mine reading at similar theme, since he managed to make shock arrows read as 1 notecount
----------
Also, 2 weeks ago I encounter that whenever I'm scrolling the song too fast, it automatically locked into
Post #645 · Posted at 2026-01-29 04:43:40am 1 month ago
~Guiltytenshi~ | |
|---|---|
| Member | |
| 54 Posts | |
| |
| Reg. 2008-12-04 | |
Hello everyone,
I haven't played SM in a while, and I decided to try 5.1 and DDR World. It looks amazing!
However, I noticed something about the background videos. They start before the song, even though they are perfectly synchronized in the .sm file (I checked them in Edit Mode).
Maybe it's not a big deal for some people but I must admit it bugs me a little. Is it there any way to manually solve it? maybe in the game options?
Thanks in advance
I haven't played SM in a while, and I decided to try 5.1 and DDR World. It looks amazing!
However, I noticed something about the background videos. They start before the song, even though they are perfectly synchronized in the .sm file (I checked them in Edit Mode).
Maybe it's not a big deal for some people but I must admit it bugs me a little. Is it there any way to manually solve it? maybe in the game options?
Thanks in advance
Post #646 · Posted at 2026-01-29 06:13:31am 1 month ago
xepher07 | |
|---|---|
| Member | |
| 13 Posts | |
| |
| Reg. 2007-12-28 | |
Quote: ~Guiltytenshi~
Hello everyone,
I haven't played SM in a while, and I decided to try 5.1 and DDR World. It looks amazing!
However, I noticed something about the background videos. They start before the song, even though they are perfectly synchronized in the .sm file (I checked them in Edit Mode).
Maybe it's not a big deal for some people but I must admit it bugs me a little. Is it there any way to manually solve it? maybe in the game options?
Thanks in advance
I haven't played SM in a while, and I decided to try 5.1 and DDR World. It looks amazing!
However, I noticed something about the background videos. They start before the song, even though they are perfectly synchronized in the .sm file (I checked them in Edit Mode).
Maybe it's not a big deal for some people but I must admit it bugs me a little. Is it there any way to manually solve it? maybe in the game options?
Thanks in advance
I have the same problem; it's a bit annoying. Otherwise, it's good enough for a beta version.
Post #647 · Posted at 2026-01-30 11:59:54pm 4.2 weeks ago
Witherbomb47 | |
|---|---|
| Member | |
| 2 Posts | |
| Not Set | |
| Reg. 2026-01-30 | |
Hello,
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
Post #648 · Posted at 2026-01-31 10:42:31am 4.1 weeks ago
TranceWarp | |
|---|---|
| Member | |
| 29 Posts | |
| |
| Reg. 2007-06-23 | |
Quote: Witherbomb47
Hello,
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
I have no problem with this, but some of the themes here have the options menu accessible by pressing the "/" key on the keyboard during song selection. It would be equivalent to pressing "9" on the keypad in the arcade.
Post #649 · Posted at 2026-01-31 10:54:21pm 4.1 weeks ago
Witherbomb47 | |
|---|---|
| Member | |
| 2 Posts | |
| Not Set | |
| Reg. 2026-01-30 | |
Quote: TranceWarp
Quote: Witherbomb47
Hello,
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
I find myself unable to change options (Scroll speed, etc) while using this theme. I have tried changing "Show Song Options" to Ask/Show in UI options, but nothing shows up. I circumvent this by disabling the theme, changing the option, and then reenabling the theme every time I want to change an option.
This is potentially user error, and if so I apologize.
I have no problem with this, but some of the themes here have the options menu accessible by pressing the "/" key on the keyboard during song selection. It would be equivalent to pressing "9" on the keypad in the arcade.
The / key works for me. It's a little annoying that I can't press the button with my pad (not enough buttons), but far better than what I was doing before, so thank you.
I notice the list that appears doesn't show every option, though. Things like rates and whether or not to submit scores aren't included in the list. Is there a way to access those, or not?
Post #650 · Posted at 2026-02-03 05:34:53am 3.7 weeks ago
sameascopy | |
|---|---|
| Member | |
| 3 Posts | |
| Not Set | |
| Reg. 2025-11-23 | |
Quote: MrK!NG
Quote: piotr25691
Quote: MrK!NG
I just tried the world theme
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
4 combos for shock arrows are a StepMania limitation, since the shock arrows are charted as 4 mines, and on DDR they're just one note that spans all columns. This is not a bug.
I just wonder what options did Yuisin use for that mine reading at similar theme, since he managed to make shock arrows read as 1 notecount
----------
Also, 2 weeks ago I encounter that whenever I'm scrolling the song too fast, it automatically locked into
The way that Yuisin makes 4 mines(/shocks) count as a single combo is by having only one of the mines be real, and the others be fake notes, if memory serves correctly
Post #651 · Posted at 2026-02-05 02:55:37am 3.5 weeks ago
DogP | |
|---|---|
| Member | |
| 1 Post | |
| Not Set | |
| Reg. 2026-02-03 | |
Just wanted to drop by and say I'm really enjoying the A3 theme... thanks for posting it! I'm getting back into DDR and StepMania after almost 20 years, and was looking for something a bit nicer than the stock theme.
I've been using it for the past week or so, and made some customizations and "fixes" (I think). I uploaded my fork to Github in case anyone else is interested in any of my changes: https://github.com/pdaderko/DDR-A3-THEME/ .
I'm using my dance pad for most controls, so my main motivation was to improve functionality of the menu with just a dance pad. But while I was messing with it, I decided to make some other changes as well.
I made a few minor tweaks for personal preference (skip language screen, shorten the caution screen time, etc). And I'm using the machine profile, so I updated a few things for consistency when using the machine profile (e.g. calorie tracking, versus mode, etc.).
One thing I fixed is that a missed hold or a let go now count as a miss when calculating status icons (e.g. full combo). I got a single N.G. in a song (tricked by a left then right arrow during an up hold
), but otherwise hit all the notes, and noticed it showed a full combo icon next to the high score.
Another thing that bothered me was when I got a really good score, but had one miss... then got a full combo the next time, but with a worse score. I didn't get the full combo lamp on the music select screen, because my highest score wasn't a full combo. So I changed it to look at all scores (not just high score) to determine the status lamps/icons.
There are a few other misc. tweaks as well - I attempted to break up commits and provide details to more easily pick and choose changes if desired.
I've only tested with StepMania 5.1-new (2025-07-18), since it works better than ITGMania/OutFox for dance pad only controls IMO.
I've read that the announcers are buggy, though they seem to be working great for me. And thanks to SchneiderAFX for the Noteskins... they look great with this theme.
I was disappointed that SNCharacters and DanceStages were removed from the current build, but I put all the SNCharacters videos in RandomMovies, which works great. Anyone know if there's a way to render DanceStages directly to a video file to use with RandomMovies?
Thanks,
DogP
I've been using it for the past week or so, and made some customizations and "fixes" (I think). I uploaded my fork to Github in case anyone else is interested in any of my changes: https://github.com/pdaderko/DDR-A3-THEME/ .
I'm using my dance pad for most controls, so my main motivation was to improve functionality of the menu with just a dance pad. But while I was messing with it, I decided to make some other changes as well.
I made a few minor tweaks for personal preference (skip language screen, shorten the caution screen time, etc). And I'm using the machine profile, so I updated a few things for consistency when using the machine profile (e.g. calorie tracking, versus mode, etc.).
One thing I fixed is that a missed hold or a let go now count as a miss when calculating status icons (e.g. full combo). I got a single N.G. in a song (tricked by a left then right arrow during an up hold
Another thing that bothered me was when I got a really good score, but had one miss... then got a full combo the next time, but with a worse score. I didn't get the full combo lamp on the music select screen, because my highest score wasn't a full combo. So I changed it to look at all scores (not just high score) to determine the status lamps/icons.
There are a few other misc. tweaks as well - I attempted to break up commits and provide details to more easily pick and choose changes if desired.
I've only tested with StepMania 5.1-new (2025-07-18), since it works better than ITGMania/OutFox for dance pad only controls IMO.
I've read that the announcers are buggy, though they seem to be working great for me. And thanks to SchneiderAFX for the Noteskins... they look great with this theme.
I was disappointed that SNCharacters and DanceStages were removed from the current build, but I put all the SNCharacters videos in RandomMovies, which works great. Anyone know if there's a way to render DanceStages directly to a video file to use with RandomMovies?
Thanks,
DogP
Post #652 · Posted at 2026-02-05 03:17:42am 3.5 weeks ago
MrK!NG | |
|---|---|
| Member | |
| 44 Posts | |
| Not Set | |
| Reg. 2024-12-23 | |
Quote: sameascopy
Quote: MrK!NG
Quote: piotr25691
Quote: MrK!NG
I just tried the world theme
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
Aside from some changes needed at name entry and timer menu after choose language, for some strange reason when I picked mines option(at custom option) it showed 4 combos instead of one than supposed to be
4 combos for shock arrows are a StepMania limitation, since the shock arrows are charted as 4 mines, and on DDR they're just one note that spans all columns. This is not a bug.
I just wonder what options did Yuisin use for that mine reading at similar theme, since he managed to make shock arrows read as 1 notecount
----------
Also, 2 weeks ago I encounter that whenever I'm scrolling the song too fast, it automatically locked into
The way that Yuisin makes 4 mines(/shocks) count as a single combo is by having only one of the mines be real, and the others be fake notes, if memory serves correctly
If that's true, it means that he needs to edit the chart first then
Thanks anyway

