what would you call this feature

Hello I would like to know the name of the feature in guitar hero and all the other music games, when you keep getting the note prefect and after a while the game turns all the note a electric blue/turquoise color. I believe you get double xp points and some sort of power up.

like in this video RB3 - Aerials - Pro Guitar Expert Leaderboard #1 GS (hand zoom)
http://www.youtube.com/watch?v=v2ibua-EXAo&feature=related

If you know what you would call this type of feature please let me know and how would someone go about making something like this [import]uid: 121743 topic_id: 23957 reply_id: 323957[/import]

On Rock Band this is called Overdrive, on Guitar Hero they call it Starpower… the equivalent in DJ Hero is called Euphoria

I like Euphoria.

This feature is actually triggered by the player, pressing a special button or by tilting the guitar up… if playing the drums, it is activated when you hit both cymbals at the same time, etc… Before being able to activate it you must collect a given amount of “energy”, you do so by playing long sequences of notes without mistakes.

Depending on you current note streak you get up to 4x bonus, but when starpower is activated you get double points, meaning you can get up to 8x bonus multiplier.
Ok now I am going to play some guitar hero .\m/ :stuck_out_tongue:

Raúl Beltrán
MIU Games [import]uid: 44101 topic_id: 23957 reply_id: 96520[/import]

thank you for the info now I just need to figure out how to make a function that can handle that type of logic’s. lol I don’t know if what I’m saying makes any sense.

but do you think any of coronas api’s could help me do something like this
“by playing long sequences of notes without mistakes”

I’m going to guess it’s built around some sort of counter that’s what I’m going to try to do build a counter that tracks the user input and to see if they touch multiple objects with out touch anything least. i know my description is vague but I hope you understated [import]uid: 121743 topic_id: 23957 reply_id: 96662[/import]

As you say, a simple counter should work.

Every time you hit a correct note the counter is incremented by 1 and when the player makes a mistake the counter should be reset to zero.

Are you working on a rock band style game? Would love to try it when it’s finished!

Raúl Beltrán
MIU Games [import]uid: 44101 topic_id: 23957 reply_id: 96681[/import]

Thanks for confirming what I was hoping to be the answer. Now this might sound silly but for the pass day I’ve been trying to make a counter function to do just what you said. But I don’t know how to ?

I’m learning as I go with my project. I just don’t want people posting up here you go type of thing. it’s going to feel like I didn’t learn how to do it but at the same time if I don’t see how some thing are done or made even as simple as a counter then how would I know how to make one in the future.
So is this code going in the right direction ?

dotSequences = 0

local function overDtive ()

if dotSequences == 10 then
dotSequences = true
print("overdrive on ")
i = 0
while i <= 10 do

print (i)

i = i + 1
end

elseif dotSequences == 1, 2, 3, 4, 5, 6, 7, 8, 9 then
enddotSequences = false
print(“overdrivre off”)

end

bluePdot:addEventListener(“touch”,overDtive)
end
I was looking up loops but I’m not sure if that’s what I should be using.

And I’m trying to make a game where you poke dots to clear the screen. with out poking a set of smaller dots that happens to get in the way of you trying to clear the screen. The game will simple be called PokeAdot, hopefully it will be in HD with a simplistic / euphoric graphics

I guess now you could see why I would want a overdrive type feature. [import]uid: 121743 topic_id: 23957 reply_id: 96899[/import]

When you write code in the forums write it between these two: and
Without the blankspace :wink:

For your app I would suggest this:

Have a function called overDrive (or something else) which is called everytime you hit or miss a note. In that function you should increment the counter with 1 and then have an if statement that checks if the counter is 10. If that is true then reset the counter and activate the overDrive mode.
When you call the function you could send an argument that depends on if you hit a note or not.
Then in the very beginning of the overdrive function you can have another if statement that checks if you hit a note or not. If it’s true then continue else return and reset counter.
The counter should be created outside the function.
-Oskar [import]uid: 24111 topic_id: 23957 reply_id: 96907[/import]

these two what ?

[lua]

– the function overDrive to allow linearDamping on blue and red dots so play and rack up more blue dots in a faster time period
– slowmode will run for 3 or 4 seconds when play reach 10 dots
local function overDrive ()

if bluePdot == evet.phase then – if player touches bluedot then
bluePdot = 1 + bluePdot – add 1 bluedot
end
if #bluePdot = 10 then – if blurdot reaches 10
slowMode = true – then run slowmode
bluePdot = 0 – and reset back to 0
elseif #bluePdot = 1, 9 then – if bluedot dosn’t reach 10 then
slowMode = false – slowmode isn’t activate
bluePdot = 0 – and set back to 0
end
if redDot == event.phase then – smaller reddot thats gets in the way
bluePdot = 0 – reset to 0
end

end

[lua]this is what i come up with I have now clue if this will work or what it really will do [import]uid: 121743 topic_id: 23957 reply_id: 96922[/import]

Your if statements have to have == when comparing. The single = is for assigning a value. [import]uid: 31262 topic_id: 23957 reply_id: 96926[/import]

Oops I meant and with out " [import]uid: 24111 topic_id: 23957 reply_id: 96929[/import]

i think this should work :wink:

[code]

local streak = 0

local function overDrive(hit)
if hit == true then
streak = streak + 1
if streak == 10 then
slowMode = true
bluedot = 0
end
else
streak = 0
end
end

overDrive(true)

[/code] [import]uid: 24111 topic_id: 23957 reply_id: 96930[/import]

still no go ?
[lua]–Boolean for switch function
–slow = false

local function spawnDots()
local buttonSlowMo = display.newCircle(0,0,20,20)
buttonSlowMo:setFillColor(153,50,204)
buttonSlowMo:setReferencePoint(display.centerReferencePoint)
buttonSlowMo.x = _W/2
buttonSlowMo.y = 500
physics.addBody( buttonSlowMo,“static”, { density = 1, friction = 0.3, bounce = 1.0, radius = 20 })

–Switch function for slow motion
function slowMode()

if slow == false then
slow = true
print(“on”) – Print “on” in terminal to show that this is functioning
for i = 1, #blueDots do – Use a for loop so we can call each individual object in the table all at once
blueDots[i].linearDamping = 1.0 – Set linearDamping to 1.5 (slows object linear velocity)
for i = 1, #redDottable do – Use a for loop so we can call each individual object in the table all at once
redDottable[i].linearDamping = 2.0 – Set linearDamping to 1.5 (slows object linear velocity)
end

end

elseif slow == true then
slow = false
print(“off”) – Print “on” in terminal to show that this is functioning
for i = 1, #blueDots do
blueDots[i].linearDamping = 0 – Set linearDamping to 0 (resume original linear velocity)
for i = 1, #redDottable do – Use a for loop so we can call each individual object in the table all at once
redDottable[i].linearDamping = 0 – Set linearDamping to 1.5 (slows object linear velocity)
end

end
end

bluePdot:addEventListener(“touch”, oD)
end

bluePdot = 0

function oD(event)

if evet == bluePdot then – if player touches bluedot then
bluePdot = bluePdot + 1 – add 1 bluedot

if bluePdot == 10 then
slow = true
bluePdot = 0
print (“oD on”)
end

else

slowmode = false

bluePdot = 0
print(“oD off”)
end
end

oD(true)

function slow_pop(event)
if(event.phase == “ended”) then
audio.play(pop)
print( “slowmoation click”)

end

end
buttonSlowMo:addEventListener(“touch”, nGravity)
buttonSlowMo:addEventListener(“touch”, slow_pop)
buttonSlowMo:addEventListener(“tap”, slowMode)

end
timer.performWithDelay(100, spawnDots, 1)
[import]uid: 121743 topic_id: 23957 reply_id: 96933[/import]

Not to hijack this, but if you want to tell someone how to enter the code tags, you could use HTML entities…

So to show <code> and </code> you type in:

<code> and </code>
It’s a bit of extra typing but its clear as to what they are supposed to do.
[import]uid: 19626 topic_id: 23957 reply_id: 96954[/import]

Hey it’s me again so after stepping back for a day or two and coming back I finally got it I think. when looking over oskwish code I went to work on it now that it works I’m having a small problem. The smoothness or not really smoothness it’s more like it just pause and then keeps on running when the time is up, witch is kind of choppy. I’m using loops as a counter but I’m guess that’s not how it suppose to be done what else could I use as a counter.

thank you Oskwish for helping me out with he last problem

[lua]–Boolean for switch function
slow = false
overDrive = 0
function hitDots (event)
if (event.phase== “ended” ) then
overDrive = overDrive + 1
print("+1")
if overDrive == 4 then


slow = false
if slow == false then
slow = true
print(“on”) – Print “on” in terminal to show that this is functioning
for i = 1, #blueDots do – Use a for loop so we can call each individual object in the table all at once
blueDots[i].linearDamping = 1.0 – Set linearDamping to 1.5 (slows object linear velocity)
for i = 1, #redDottable do – Use a for loop so we can call each individual object in the table all at once
redDottable[i].linearDamping = 2.0 – Set linearDamping to 1.5 (slows object linear velocity)
end

end

i = 5
while i <= 70000 do
print (i)
i = i + 1
end

– for i = 0, 70000, 1 do

– print(i)
– end

print(“slow on”)
overDive = 0
end
if overDrive == 0 then
slow = true

elseif slow == true then
slow = false
print(“off”) – Print “on” in terminal to show that this is functioning
for i = 1, #blueDots do
blueDots[i].linearDamping = 0 – Set linearDamping to 0 (resume original linear velocity)
for i = 1, #redDottable do – Use a for loop so we can call each individual object in the table all at once
redDottable[i].linearDamping = 0 – Set linearDamping to 1.5 (slows object linear velocity)
end

end

end

overDrive = 0
print(“slow off”)
end

end

end [import]uid: 121743 topic_id: 23957 reply_id: 98332[/import]