Example 2: TwistedTangle

TwistedTangle - hyper-casual puzzle game

TwistedTangle is a hyper-casual puzzle game. It has a very simple "complete the level" system with easy to understand gameplay, but under the surface, there is actually quite a clever metagame/progression loop.
Solve puzzles -> earn soft currency -> complete boss levels -> unlock challenges and earn more soft currency -> spend soft currency to do challenges -> unlock cosmetics.


Example of event tags for TwistedTangle:

Example 1: Level 12 complete, with soft currency reward

NeftaEvents.Record(new ProgressionEvent({  
	_name = "level12",  
	_status = Status.Complete,  
	_type = Type.CoreContent,  
	_source = Source.GameplayUnit
)
                   
NeftaEvents.Record(new ProgressionEvent({  
	_name = "level12",  
	_status = Status.Complete,  
	_type = Type.CoreContent,  
	_source = Source.GameplayUnit  
)

NeftaEvents.Record(new ProgressionEvent({  
	_name = "challengeMedium1",  
	_status = Status.Fail,  
	_type = Type.Boss,  
	_source = Source.GameplayUnit
)

Example 2: Player failed the challenge level and spent 1 heart to retry

NeftaEvents.Record(new ProgressionEvent({
	_name = "challengeMedium1",  
	_status = Status.Fail,  
	_type = Type.Boss,  
	_source = Source.GameplayUnit
)

NeftaEvents.Record(new ProgressionEvent({
	_name = "challengeMedium1",  
	_status = Status.Fail,  
	_type = Type.Boss,  
	_source = Source.GameplayUnit  
)

NeftaEvents.Record(new SpendEvent({
	_name = "heartContinue",  
	_category = Category.Resource,  
	_quantity = 1,  
	_method = Method.Continuity
)

Example 3: New challenge unlocked and complete

NeftaEvents.Record(new SpendEvent({
	 _name = "unlockChallenge6",  
	_category = Category.SoftCurrency,  
	_quantity = 300,  
	_method = Method.Unlock  
)

NeftaEvents.Record(new ProgressionEvent({
	_name = "challenge6",  
	_status = Status.Start,  
	_type = Type.Boss,  
	_source = Source.GameplayUnit  
  )

NeftaEvents.Record(new ProgressionEvent({  
	_name = "challenge6",  
	_status = Status.Complete,  
	_type = Type.Boss,  
	_source = Source.GameplayUnit  
)

NeftaEvents.Record(new ReceiveEvent({  
	_name = "endChallenge6",  
	_category = Category.SoftCurrency,  
	_quantity = 500,  
	_method = Method.Level  
)

To learn about integrating event tags, take a look at this page:


TwistedTangle core gameplay loop

TwistedTangle core gameplay loop

TwistedTangle core gameplay loop with Nefta tag categories

TwistedTangle core gameplay loop with Nefta tag categories