How to make a Roblox JOJO game #2 | Making Stand Combat

SushiMaster
27 Feb 202233:05

Summary

TLDRIn this tutorial video, the creator guides viewers through the process of making a style combat system in Roblox using Lua scripting. The video offers practical tips, such as avoiding the use of 'part.Touched' for hitboxes and not implementing combos on the client-side to prevent exploits. The script includes setting up cooldowns, creating combo animations, and utilizing raycast boxes for precise hit detection. The tutorial also covers adding a combo system with attributes, tweening character movements, and implementing a damage system with hitboxes. The creator promises to continue with sound effects, stand features, knockbacks, and particle effects in the next installment, aiming to provide a comprehensive guide for building an engaging combat experience in Roblox.

Takeaways

  • 🛠️ The video is a tutorial on creating a style combat system in Roblox using Juju series.
  • 🚫 Avoid using 'part.Touched' for hitboxes as it can be easily manipulated and is not server-side.
  • 🔄 Do not use client-side combo systems as they can be exploited by resetting the combo.
  • ⏱️ Implement cooldowns for summoning to prevent spamming and ensure fairness in gameplay.
  • 📊 Use 'os.time()' to track the time passed since a specific action, aiding in cooldown management.
  • 🔄 Create a combo system that resets after a certain number of hits to maintain game balance.
  • 🎭 Ensure animations are prepared and named in a specific order to correspond with the combo sequence.
  • 🤖 Utilize 'AnimationController' for smooth transitions between different combat animations.
  • 📡 Use server scripts to manage combo logic to prevent client-side manipulation.
  • 🎯 Implement precise hitboxes using 'raycast box' for accurate combat interactions.
  • 🔧 Add attributes to manage whether a character is currently attacking to prevent overlapping animations.

Q & A

  • What is the main topic of the video?

    -The main topic of the video is creating a style combat system in a game development environment, likely Roblox, with a focus on avoiding common mistakes and implementing proper cooldowns and hitboxes.

  • Why should part touch not be used for the hitbox according to the video?

    -Part touch should not be used for the hitbox because it can be easily manipulated by experts to extend the hitbox, which can lead to unfair gameplay where the hitbox can still hit a dummy on the server.

  • What is the reason for not using combos in the local script?

    -Combos should not be used in the local script because it makes them client-sided, which can allow players to exploit the system and create infinite combos by resetting the combo every time.

  • What is the purpose of the 'coco cooldown' variable in the script?

    -The 'coco cooldown' variable is used to implement a cooldown period for summoning, preventing players from repeatedly summoning without any delay.

  • What does 'os.time()' return and how is it used in the script?

    -'os.time()' returns the time in seconds since January 1, 1970. In the script, it is used to calculate the time that has passed since a certain action, like pressing a key, to manage cooldowns.

  • What is the significance of the 'animation' variable in the combat script?

    -The 'animation' variable is crucial as it controls the character's movements and actions during combat. It is loaded from the 'anim' folder and plays a sequence of animations based on the combo system.

  • Why is the 'attacking' attribute used in the script?

    -The 'attacking' attribute is used to check if the character is currently in an attacking state. If the character is attacking, the script will stop to prevent overlapping animations or further actions until the attack is completed.

  • What is the purpose of the 'tween' service in the script?

    -The 'tween' service is used to create smooth transitions between different character positions or animations, such as moving the character's stand forward or backward during combat.

  • Why is the 'raycast box' preferred over 'part.touch' or 'magnitude' for hitboxes in this tutorial?

    -The 'raycast box' is preferred because it offers more precision for hit detection compared to 'part.touch' or 'magnitude'. It allows for a more accurate representation of where the hit occurs.

  • How does the script handle the cooldown after the fifth combo?

    -The script includes a task delay for one second after the fifth combo is executed. This pause ensures that there is a cooldown period before the player can continue with another combo.

  • What is the final step in the script related to the hitbox?

    -The final step in the script related to the hitbox is to create the hitbox using 'module.castmore' with the appropriate parts table indexed by the combo, and then handling the hit detection with the 'hitbox.onHit' event.

Outlines

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Mindmap

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Keywords

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Highlights

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن

Transcripts

plate

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.

قم بالترقية الآن
Rate This

5.0 / 5 (0 votes)

الوسوم ذات الصلة
Roblox ScriptingLua TutorialCombat SystemGame DevelopmentHitbox MechanicsAnimation ComboCooldown SystemRaycast BoxCharacter CustomizationScript Optimization
هل تحتاج إلى تلخيص باللغة الإنجليزية؟