Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by GFurtado

  1. I'm not sure, because I never done this course. Maybe something like this?
  2. If you right-click on the Standard Library you'll see a Show Deprecated Objects option. The Workstation should appear in your library after that, but you could try to solve this using servers instead as a bonus challenge.
  3. Let me see if I understood correctly. You want something like this? Create a Timer Element and set its Time Offset to a referenced property: Then create a process that ends the run (through the EndRun step) when the timer triggers:
  4. It is possible to reference a column in a expression property ( e.g.: Table1[1].Separator1 ) But I suggest: Working with Work Schedules on your Data tab Or rearrange your table to include a Object Instance Property column containing all your servers, following by Integer Property column with its capacities. This should make the referecing easier.
  5. (state where the object is stored).(type of the object).(expression) So, in your example you should type: Tab1[1].Obj.Resource.CurrentCapacity. Same logic applies to object state variables. If you want to know the current capacity of a resource stored in a object state variable named ObjState, call it as ObjState.Resource.CurrentCapacity. I attached a file if you want to see it in action. I'm not sure if this works with vectors, I never tried it. Object Referencing.spfx
  6. Every station comes with three events: .Exited, .Entered and .CapacityChanged. So the triggering event of an entity finishing processing in a server is Server.Processing.Exited.
  7. The expression State.InitialValue might help you, but I believe you can't reset every value of the array at the same time (I might be wrong). In this case, you'd need to set multiple assignments or loop in a process.
  8. Have you tried State == Nothing ? You could also create a decoy object and assign it on run innitialized.
  9. Each entity running on a model is actually an instance of another model (a model entity). You'll se each individual distance travaled if you add an attached label on your ship entity, or else you'd need to reference that particular instance somehow. In the model attached in this post, I get the distance traveled of the last entity created. You also could set a "checkpoint" that assigns ModelEntity.TotalDistanceTraveled to a state whenever that entity goes through it. AttachedLabel.spfx
  10. Do entities choose the server randomly? In this case you could set the Outbound Link Rule to By Link Weight. Then set the connectors weight to its respective cashier current capacity. So when the cashier's capacity equals zero, the entity has a 0% chance of choosing that cashier.
  11. If the parent entity knows how many bags belongs to they, you could set this expression in combiner's Batch Quantity property, something like my new attached model. Then you set the bag and passager IDs in the Ranking Rule property. Match Quantity.spfx
  12. You can assign each entity an individual ModelEntity.Priority and set your Combiner to only match entities with the same priority. Check my attached model to see an example. Match Priority.spfx
  13. If you want to see a stat in the Pivot Grid, you need to register it in a Tally step. Create a new Tally Statistics element on your Definitions tab. Add a Tally step in your process.
  14. You need to end the Transfer step you started. 1. Create a process containing the EndTransfer step that is triggered when entering Input@Cashier. 2. Set your Transfer step to the Input@Cashier node. I hope it helps.
  15. For your second question, you should use TimePaths instead of Paths. Just set the Initial Traveler Capacity and Travel Time properties to an arbritary number. Traffic with TimePaths.spfx
  16. Check my attached model. The entities have random movement speed and paths Allow Passing property are set to False. So slower entities will naturally create a traffic congestion. You could also try to solve this in a more algebraic manner, by setting ModelEntity.DesiredSpeed or Path.DesiredSpeed based on the Path.Contents state. Traffic.spfx
  17. Have you checked the Initial Traveler Capacity property? It is a property available on paths, timepaths and conveyors that limits the number of simultaneous entities within the link.
  18. Ok, I understand now. Check the Vehicle Fixed Route SimBit. It's an interest SimBit and some of its concepts might help you. If you still need assistence after that, scribble a process fluxogram and I (or some other user) will probably help you.
  19. I'm not sure if I understood your problem. Is it something like my attached model? Entering Conveyor via Vehicle.spfx
  20. Check the server property Ranking Rule. This property determines the order entities are processed. Look at the attached model. I assign the Entity.Priority when it cames out of the sources and set my server to rank entities based on the Entity.Priority expression. I hope it helps. EntityPriority.spfx
  21. I'm having the same problem aswell. Did anyone find a fix?
  22. Cool, I manage to find a solution using the Search Step. Thank you so much, Mark. You're absolutely right. I didn't even notice it.
  23. Greetings! I have this problem and I'm probably doing something wrong. I'm trying to use the Find Step to make my entities look for the closest server through the DirectDistanceTo Expression. This Process is triggered when the entity enters a Transfer Node. Based on these screenshots, can you tell me what am I doing wrong? I'm almost certain the Search Expression is incorrect. Thanks!
  24. I had this weird idea: Is it possible to trigger some options from the Run ribbon through Processes or something else? For exemple: When certain event occurs, it resets the simulation. Or it automatically fast-forward or changes animation speed. I know it's possible to end the run, but how about the other options? Thanks!
  25. You can change an object position mid-run through the "Relocate Object" User-defined Step. Check this:
  • Create New...