Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by GooseCoder · Mar 17, 2016 at 03:14 PM · 2d game2d-platformer2d-gameplay2d platformer

Does anyone know how to make an object(enemy) follow a path set by the player in a 2D side scroller?

I have just recently started coding and already ran into a problem. I want an enemy to chase the player, but by following what the player is doing. I want it to also increase the rate at which it follows the path that way it can actually catch the player. It doesn't matter whether the code is in C# or Javascript. Thank you for your time and help.

var nextUsage; var delay = 0; var target : Transform; private var thisTransform : Transform; private var velocity : Vector2;

function Start() { nextUsage = Time.time + delay; thisTransform = transform; }

function Update() { if (Time.time > nextUsage) { nextUsage = Time.time + delay; thisTransform.position.x = (target.position.x - 60/Time.time); thisTransform.position.y = (target.position.y); } }

Comment
Add comment · Show 3
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Brocccoli · Mar 17, 2016 at 03:43 PM 1
Share

This seems like a fairly complex problem, and not one that can simply be coded as an answer in this forum.

To give a brief rundown of my idea on how I would do something such as this:

The player is controlled by the user, but in a way so is the enemy, right? Since it's copying the moves of the player EXACTLY as the player did it, perhaps just moving slightly faster, the Enemy is essentially being controlled by the user as well.

What I would do is make some sort of queue of key presses and lengths the player moved to be repeated by the enemy. Of course, the enemy doesn't actually have a key to press, so you would have to translate key presses into enemy actions.

Just an idea.

avatar image LazyElephant · Mar 17, 2016 at 03:50 PM 2
Share

You should do some reading on AI steering behaviors. http://gamedevelopment.tutsplus.com/series/understanding-steering-behaviors--gamedev-12732

avatar image Ali-hatem · Mar 17, 2016 at 06:35 PM 1
Share

@GooseCoder : if there was no obstacles between each other :

 public Transform target;
 public int speed = 5;
 void Update()
 {
 transform.position = Vector3.$$anonymous$$oveTowards(transform.position,target.position,speed);
 }

but if you want the enemy to fallow the player with it's exact path then i have another dump idea !!!!

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by GooseCoder · Mar 17, 2016 at 06:37 PM

Thank you very much. I really appreciate all the help. I will look into more AI steering behaviors to advance the enemy.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

6 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Need Help Getting Basic Mechanics Started (2D Puzzle Platformer) 0 Answers

"Invalid argument"? 0 Answers

How to fix spite character changing position when turning? 1 Answer

How do you Isolate Physics2D.OverlapArea to a single script/gameObject/Instance? 0 Answers

Unity 2D 5.2.2 How can I aim with keys towards an object? 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges