# Patent

## Title
Magic wand methods, apparatuses and systems

## Abstract

Methods, apparatuses, systems, and storage media for creating, discovering, and/or resolving spells using a wand are provided. In embodiments, a computing device or a wand may detect one or more gestures and sensors in the wand may generate sensor data representative of the one or more gestures. The one or more gestures may be movements performed using the wand. The computing device or wand may convert the sensor data representative of the one or more gestures into a spell sequence. The wand may transmit the spell sequence to a computing device, and receive, from the computing device, a spell output based on the spell sequence and a wand position. The wand may also determine the spell output based on the spell sequence without transmitting the spell sequence to another device. Other embodiments may be described and/or claimed.

## Background
FIELD
The present disclosure relates to the field of interactive computing, and in particular, to apparatuses, methods, storage media, and systems utilizing a wand in interactive games.
BACKGROUND
Entertainment systems, video game consoles, and/or other like gaming devices typically provide interactive gaming experiences wherein users interact with a game and/or other users by providing one or more inputs and receiving feedback in response to the provided inputs. The inputs may be provided using an input device or controller, such as joysticks, keyboards, computer mice, touchscreens, motion sensing devices, and the like. The feedback may be received using one or more output devices, such as through display devices, audio devices, haptic feedback devices, and the like.
Gaming devices and their controllers may provide some interactive gaming experiences. However, many of these gaming devices are limited to proprietary platforms, which often require the use of platform-specific controllers. The term “platform” may refer to the specific electronic components and software that provide a gaming experience. Furthermore, many of these gaming devices and gaming experiences may be limited to specific physical and/or virtual environments. Moreover, many of these gaming devices do not provide users with the ability to interact with other devices, such as non-proprietary gaming devices and/or non-gaming devices. Therefore, typical gaming devices and/or platforms may be limited in their ability to offer an immersive gaming experience.



BRIEF DESCRIPTION OF THE DRAWINGS
Embodiments will be readily understood by the following detailed description in conjunction with the accompanying drawings. To facilitate this description, like reference numerals designate like structural elements. Embodiments are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.
FIGS. 1A-1D illustrate various gaming environments in which various example embodiments described in the present disclosure may be implemented;
FIG. 1E illustrates a data flow diagram for devices operating in a gaming environment, in accordance with various example embodiments;
FIG. 2 illustrates the components of a wand, in accordance with various example embodiments;
FIG. 3A illustrates the components of a wand module, in accordance with various example embodiments;
FIG. 3B illustrates the components of a computing device, in accordance with various example embodiments;
FIG. 3C illustrates the components of a wand module, in accordance with various example embodiments;
FIG. 4 illustrates a process for spell creation, in accordance with various embodiments;
FIG. 5 illustrates a process for spell discovery, in accordance with various embodiments; and
FIGS. 6A-6B illustrate a process for spell resolution, in accordance with various example embodiments.



DETAILED DESCRIPTION
In the following detailed description, reference is made to the accompanying drawings which form a part hereof wherein like numerals designate like parts throughout, and in which is shown by way of illustrated embodiments that may be practiced. It is to be understood that other embodiments may be utilized and structural and/or logical changes may be made without departing from the scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope of embodiments is defined by the appended claims and their equivalents.
Various operations may be described as multiple discrete actions and/or operations in turn, in a manner that is most helpful in understanding the claimed subject matter. However, the order of description should not be construed to imply that the various operations are necessarily order dependent. In particular, these operations may not be performed in the order of presentation. Operations described may be performed in a different order than the described embodiments. Various additional operations may be performed and/or described operations may be omitted in additional embodiments.
For the purposes of the present disclosure, the phrase “A and/or B” means (A), (B), or (A and B). For the purposes of the present disclosure, the phrase “A, B, and/or C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C). For the purposes of the present disclosure, the phrase “at least one of A and B” means (A), (B), or (A and B).
The description may use the phrases “in an embodiment”, or “in embodiments”, which may each refer to one or more of the same or different embodiments. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments of the present disclosure, are synonymous.
As used herein, the term “logic”, “module”, and/or “circuitry” may refer to, be part of, or include an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and/or memory (shared, dedicated, or group) that execute one or more software or firmware programs, a combinational logic circuit, and/or other suitable components that provide the described functionality. In some embodiments, the modules and/or circuitry may be implemented in, or functions associated with the modules and/or circuitry may be implemented by, one or more software or firmware modules in combination with one or more hardware devices.
Also, it is noted that example embodiments may be described as a process depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel, concurrently, or simultaneously. In addition, the order of the operations may be re-arranged. A process may be terminated when its operations are completed, but may also have additional steps not included in the figure(s). A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, and the like. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function and/or the main function.
As disclosed herein, the term “memory” may represent one or more hardware devices for storing data, including random access memory (RAM), magnetic RAM, core memory, read only memory (ROM), magnetic disk storage mediums, optical storage mediums, flash memory devices and/or other machine readable mediums for storing data. The term “computer-readable medium” may include, but is not limited to, memory, portable or fixed storage devices, optical storage devices, wireless channels, and various other mediums capable of storing, containing or carrying instruction(s) and/or data.
Furthermore, example embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine or computer readable medium. A code segment may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, program code, a software package, a class, or any combination of instructions, data structures, program statements, and the like.
As used herein, the term “computing device” may be considered synonymous to, and may hereafter be occasionally referred to, as a client, client device, mobile, mobile unit, mobile device, mobile terminal, mobile station, mobile user, user equipment (UE), user terminal, subscriber, user, remote station, access agent, user agent, receiver, etc., and may describe a remote user of network resources in a communications network. Furthermore, the term “computing device” may include any type of wired and/or wireless device such as consumer electronics devices, desktop personal computers (PCs), laptop PCs, smart phones, tablet PCs, wearable computing devices, personal digital assistants (PDAs), and/or any other like physical computing device that is able to connect to a communications network.
As used herein, the term “network element”, may be considered synonymous to and/or referred to as a networked computer, networking hardware, network equipment, router, switch, hub, bridge, gateway, and/or other like device. The term “network element” may describe a physical computing device of a wired or wireless communication network that is configured to host a client device and the like. Furthermore, the term “network element” may describe equipment that provides radio baseband functions for data and/or voice connectivity between a network and one or more users.
As used herein, the term “game” may considered synonymous to and/or referred to as a quest, sport, event, activity, role-playing games (RPG), simulation, etc. A game may be any sequence of events with or without a defined set of rules, wherein the sequence of events and/or rules may be defined by a game operator and/or other like entity. Typically games have a beginning and a conclusion, but in some embodiments, a game may not have either a beginning or an ending.
Example embodiments disclosed herein provide apparatuses, systems, and methods for providing immersive interactive gaming experiences. Example embodiments introduce a “magic” wand that may be used for interacting with a game or immersing oneself within a gaming environment. Example embodiments also utilize already existing output devices and/or already existing gaming platforms to provide gaming feedback to a user. The example embodiments differ from typical gaming platforms or systems that provide interactive gaming experiences because the typical gaming platforms are usually tied to a specific proprietary platform, and/or tied to a specific physical or virtual environment. For example, video game platforms require proprietary video game consoles, which often require proprietary video game controllers, video game motion detectors, and video game software to run on the video game console. Additionally, most video game platforms do not provide for interoperability with or between competing platforms. By way of another example, laser tag, which is a recreational activity where players attempt to score points by tagging targets, typically requires a hand-held infrared-emitting targeting device to be used within a defined physical environment, such as an indoor or outdoor arena. Many laser tag systems use infrared-sensitive targets are commonly worn by each player and may be integrated within the arena in which the game is played, which may allow laser tag participants to interact with one another and their defined environment. However, typical laser tag systems are limited to their specific physical environment and usually require users to employ the same or similar infrared-emitting targeting devices. Additionally, although many laser tag systems and devices use hardware and embedded software to alter game parameters and/or provided varied game play, these typical laser tag systems usually only provide a single method for tagging targets, such as by pulling a trigger on a laser tag gun.
The example embodiments disclosed herein refer to a user interface device/controller as a “wand”, which may refer to the general shape and/or form of the user interface device. However, it should be noted that the term “wand” is not meant to limit the user interface device disclosed herein to a specific shape or form. Indeed, other forms, shapes, and/or artistic representations of the user interface device may be used. For example, the user interface device may be shaped, formed, or otherwise implemented as a scepter, a staff, a baton, a rod, a pen, a sword, a sabre, a screwdriver, a glove, a ring, a bracelet, stuffed or plush toy, a baseball bat, a lacrosse stick, and/or any other like device that may impart directionality. Furthermore, the example embodiments disclosed herein refer to the environment in which the wand or user interface device is used as a “gaming environment” or “environment”. It should be noted that the user interface devices disclosed herein may be used for various activities other than games. For example, the user interface device may be implemented in toy guns, training guns, and the like for use in police and/or military training environments, such as urban operations (UO) exercises, military operations in urban terrain (MOUT) exercises, and the like. By way of another example, the user interface device may be implemented in a wearable device for use in commercial environments, such as a shopping mall, a city's downtown region, or specific shops/stores. Moreover, the user interface device described herein may be used for home automation, such as controlling one or more services associated with one or more smart objects or “Internet of Things” (IoT) devices.
In various embodiments, the wand is a user interface that allows a user to initiate specific “spells”, which, according to various embodiments, may be triggers to one or more sequences, operations, and/or actions by internal feedback/output devices and/or external feedback/output devices. For example, a user may perform an “unlock” spell by manipulating a wand using various motions and/or gestures, which may be converted into a spell sequence. The spell sequence may then be used to determine that a smart lock is to unlocked, and state-change instructions (or “unlock” instructions in this example) may be sent to the smart lock. In various embodiments, the wand may use one or more built-in or associated sensors to collect data about an intended spell, spell direction, and/or spell intensity. In various embodiments, the collected data may include spatial coordinates of the wand and/or changes in the spatial coordinates captured by the one or more sensors, position information of the wand relative to one or more external devices (including other wands), and/or voice commands issued by a user of the wand. Examples of the one or more sensors include accelerometers, gyroscopes, magnetometers, microphones, and the like. In various embodiments, the wand may also include a communications module, transmission circuitry, and/or other means of device communications so that the wand may communicate the collected sensor data to a computing device, a gaming system, external output/feedback devices, and the like. The communications between the wand and the other devices may be by way of radio-frequency (RF) communications methods, such as Bluetooth low energy (BLE) signaling, RF identification (RFID) signaling, infrared signaling, WiFi signaling, and the like. In some embodiments, the wand may send the data to an application running on a paired computing device, such as a smartphone, a desktop PC, a home/arena server, or any other like dedicated device. The computing device, by way of the application, may analyze the data, determine the spell type, spell direction, and/or spell intensity. The computing device, by way of the application, may then communicate with, or otherwise instruct one or more feedback/output devices in the vicinity of the wand and/or computing device to activate in accordance with the determined spell. Furthermore, the computing device may also send information indicative of the determined spell to a game accounting server or other like back-end service to track a user's progress in an interactive game and/or quest. In some embodiments, the computing device may include the capabilities and/or functions of the back-end service. In some embodiments, the wand itself may include the capabilities and/or functions of the computing device, such that the wand itself may determine the spell type, spell direction, and spell intensity and instruct one or more feedback/output devices in the vicinity of the wand to activate in accordance with the determined spell. In various embodiments, the electronic components and software components of the wand may be housed in a “wand module”, which can be inserted in a larger housing, which may allow for a variety of artistic representations of the “wand”. For example, the housing could be a hand-held device that is depicted in various movies, television series, books, etc.
Referring now to the figures. FIGS. 1A-1C show gaming environments 100A, 100B, and 100C (collectively referred to as “gaming environment 100”), respectively, in which a wand 125 may be used to activate one or more devices 101-1 to 101-4, in accordance with various embodiments. As shown in FIGS. 1A-1C, gaming environment 100 may include devices 101-1 to 101-4 (collectively referred to as “devices 101”), computing devices 105A and 105B (collectively referred to as “computing devices 105” or “computing device 105”), beacon 110, network 115, accounting server 120, and wand 125A and 125B (collectively referred to as “wand 125”). FIG. 1A illustrates an example embodiment of a single player gaming environment 100A in which the wand 125A is coupled with computing device 105A; FIG. 1B illustrates an example embodiment of a multiplayer gaming environment 100B in which the wand 125A and 125B operate without coupled computing devices 105A and 105B; and FIG. 1C illustrates an example embodiment of a multiplayer gaming environment 100C in which a “wand duel” takes place between wand 125A and 125B coupled with computing devices 105A and 105B, respectively.
According to various embodiments, wand 125 may be any handheld device that provides a user with the ability to interact with one or more devices in the gaming environment 100, such as devices 101 and/or computing devices 105. The wand 125 may include a communication module (e.g., communications module 330 as shown in FIGS. 3A and 3C), one or more memory devices (e.g., memory 350 as shown in FIGS. 3A and 3C), one or more processors (e.g., processor 310 as shown in FIGS. 3A and 3C), one or more sensors (e.g., sensors 306 as shown in FIGS. 3A and 3C), one or more output/feedback devices (e.g., first devices 215 as shown in FIGS. 2, 3A, and 3C), and/or other like components (e.g., as shown in FIGS. 3A and 3C). Wand 125 may be designed to sequentially and automatically carry out a sequence of arithmetic or logical operations; equipped to record/store digital data on a machine readable medium; and transmit and receive digital data.
Wand 125 may include one or more sensors, such as an accelerometer, gyroscope, gravimeter, magnetometer, and/or another like devices that are configured to measure and/or detect a motion, an acceleration, and/or an orientation of the wand 125. In such embodiments, wand 125 may be configured to determine a magnitude and direction of an acceleration and/or motion of the wand 125, and convert the acceleration and/or motion of the wand 125 into position and/or orientation information. The changes in the positions and/or orientations of the wand 125 may be indicative of one or more gestures performed by a user of the wand 125. The one or more sensors may be configured to detect the one or more gestures as sensor data. In various embodiments, the sensor data may include or otherwise indicate one or more spatial coordinates (or changes in spatial coordinates) for the positions and/or orientations of the wand 125. The sensor data may then be passed to a processor and/or spell module of the wand 125 to be converted into a spell sequence, or for any other type of analysis and/or filtering. In this way, the positions and/or orientations (or changes in the positions and/or orientations) may be used to determine a spell type, spell direction, spell intensity, etc. according to the various example embodiments described herein. In some embodiments, the one or more sensors may include a microphone configured to obtain one or more voice commands issued by a user of the wand 125. In such embodiments, the one or more voice commands may be recorded and included with the spell sequence for spell determination. In some embodiments, the one or more sensors may include one or more biometric sensors, such as an infrared heart rate monitoring device, a fingerprint or handprint scanning device, an eye scanning device, an electromyography (EMG) device for detecting electrical patterns associated with a user's muscular contractions, an electroencephalograph (EEG) device for measuring and/or recording electrical signals produced by a user's brain, and the like. In such embodiments, biometric data detected or sensed by the one or more biometric sensors may be included with the spell sequence for spell determination, such that the user's heart rate, finger/hand print, muscular contractions, brainwaves, and the like may be included with the spell sequence for spell determination. Furthermore, in various embodiments, the wand 125 may track a timing that one or more gestures are performed. For instance, a spell may require specific sequences or timing relationships in order to obtain a spell output. For example, a spell might require a button press followed by a bodily movement, followed by a voice command, etc., wherein all of the aforementioned gestures are required to be performed within 30 seconds. Additionally, in some embodiments, a spell may require that a bodily movement and a voice command start and complete within 200 milliseconds of each other.
In some embodiments, the one or more sensors may include one or more motion capture devices that may be configured to capture motion by detecting a change in position of a body relative to its surroundings, or by detecting a change in the surroundings relative to the body. In such embodiments, the motion capture devices may be configured to measure the strength and/or speed of a body's motion. In various embodiments, the one or more sensors may include one or more optical cameras and/or one or more thermographic (infrared) cameras, which may be configured to form images using infrared radiation. Such infrared cameras may be similar to optical-lens cameras, which form images using visible light, but instead operate in wavelengths in the infrared range of the electromagnetic spectrum. In embodiments where the sensors include one or more infrared cameras, the sensors may also include an infrared projector and/or infrared laser projector, which may be configured to project an infrared beam at one or more targets and sense a reflection of the infrared beam being reflected off the one or more targets.
In various embodiments, in addition to determining the orientation of the wand 125, the one or more sensors may be used to determine the directionality of the wand 125. The orientation of the wand 125 may be an angle of the wand 125 relative one or more objects, such as a body part of the user of the wand 125. The directionality may indicate a direction in which the wand is directed and/or being pointed by the user. In this regard, the wand 125 may have a defined portion from which a spell output is to be applied (or a region of effect (ROE) is to be directed and/or focused). The defined portion may include, for example, a front portion or tip portion (e.g. tip portion 208 as shown in FIG. 2) from which the spell or “magic” is to emanate. Accordingly, in various embodiments, the wand 125 may use the position and/or orientation information from the one or more sensors to distinguish one portion of the wand 125 from other portions of the wand.
In some embodiments, the one or more sensors may sense environmental factors, which may be included with the spell sequence and used to determine a spell intensity and/or spell output. The environmental factors may include any information regarding an environment of the gaming environment 100, such as ambient lighting, surrounding electromagnetic fields, and/or any other like biotic or abiotic factors surrounding the wand 125.
As noted previously, the changes in the positions and/or orientations of the wand 125 may be indicative of one or more gestures performed by a user of the wand 125. The one or more gestures may include bodily movements, voice commands, and/or other like inputs, such as pressing a button 210 of the wand 125 and the like. The bodily movement gestures may include any action or movement of the wand 125 made by the user. The bodily movement gestures can originate from any bodily motion or state, but because the wand 125 is typically embodied as a handheld device, the one or more gestures may originate from a hand of a user. Additionally, the bodily movement gestures may be based on a height and/or body part lengths of the user, which may be based on the accuracy of the spatial coordinate data detected by the one or more sensors. For example, a first user that makes a circular motion with an extended arm may yield different spatial coordinate changes than a second user that makes a similar circular motion with an extended arm, such as when the height and and/or arm length of the first user are greater than the height and and/or arm length of the second user. In this instance, the circular movement made by the first user may produce a larger circumference than a circumference of the circular movement made by the second user. Additionally, a bodily movement gesture can include not only movement of the wand 125, but may also be based on a body position established by a user. Furthermore, in various embodiments, the voice command gestures may include specific sounds or words that are pronounced by the user of the wand 125. It should be noted that the sounds or words do not have to be previously known in any human language, but rather, the sounds or words may only be required to be repeatable by the user. In various embodiments, the wand 125 may be configured to record voice command gestures, and communicate those recordings to the computing device 105 for voice recognition. In other embodiments, the wand 125 may be configured to perform the voice recognition of the voice command gestures. The voice recognition methods and systems are known or commercially available, and are readily implemented by persons having ordinary skill in the art, particularly in light of the disclosure herein.
In various embodiments, wand 125 may include one or more feedback/output devices, which are internal to the wand 125, attached to a housing 205 of the wand 125, and/or communicatively coupled with the wand 125 and/or computing device 105. The devices that are internal, attached, and/or communicatively coupled with the wand 125 and/or computing device 105 may be referred to as “first devices”. The one or more first devices may be used to provide feedback or other like indications as to whether a spell has been properly performed or not (within a certain margin of error). The first devices may include one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices and/or one or more actuators, one or more heating elements, and the like. In some embodiments, the first devices may include a display device and/or a projector. The wand 125 may instruct or otherwise activate the one or more first devices by issuing one or more instructions or control signals to the one or more first devices, which are referred to herein as “first instructions”. The first instructions may be defined by a spell output, which is associated with one or more spells, wherein the spell output indicates to issue the first instructions upon completion of an associated spell (within a certain margin of error). The spell output may also define or otherwise indicate a spell output intensity, which may be an intensity level at which to activate the one or more first devices. The first instructions and/or control signals may instruct and/or control the one or more first devices to output a desired audio output at a desired volume level and/or for a desired playback time when the one or more first devices include the one or more audio devices; emit a desired light sequence and/or illumination level/intensity when the one or more first devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion at a desired intensity and/or for a desired period of time when the one or more first devices include the one or more haptic feedback devices, one or more actuators, and/or one or more transcutaneous electrical nerve stimulation (TENS) devices; and heat the wand to a desired temperature when the one or more first devices include the one or more heating elements. Furthermore, in various embodiments, the first instructions may indicate to turn off or shut down various functions, such as shutting off one or more LEDs. In some embodiments, the first instructions may include sending (additional) game-related messages to other users in the gaming environment 100 (e.g., “fireball from user A exploded at position (X,Y,Z) including 10 points damage to players B and C and/or devices within 5 meters of position (X,Y,Z)”).
As noted previously, the first devices may include devices that are communicatively coupled with the wand 125 and/or computing device 105. Such devices may include Bluetooth earpieces, headphones, and/or speakers; a head-mounted (or helmet-mounted) display device; a head-mounted (or helmet-mounted) augmented reality headset; and the like. In embodiments, where the first instructions indicate to play an audio output and/or a video output, the files associated with the audio output and/or video output may be stored in a computer-readable medium of the computing device 105, stored in a computer-readable medium of the wand 125, and/or the output files may be streamed or otherwise provided to the computing device 105 and/or the wand 125 from a content provider on-demand, which may then be output via the communicatively coupled output device. Additionally in various embodiments, an audio output or video output (e.g., a sound effect, etc.) may indicate the success or failure of the spell output. For example, one or more sound effects that vary in tone, sequence, and/or amplitude may be used to indicate the level of success of the spell output. In some embodiments, the audio/video output may include corresponding effects to indicate different amounts of spell output intensities, such as by using a fizzling sound and the like. In other embodiments, a sound effect may be a recorded or synthesized utterance, which may provide a message such as “Your spell has completed properly” or “Your spell has not completed properly”. Furthermore, in various embodiments a haptic and/or visual response (e.g., vibration and/or LED illumination, etc.) may also be generated from the wand 125 to be used in combination with one or more sound effects. Moreover, the first instructions (and/or the second instructions described herein) may indicate that a gesture was incorrectly performed or missing from a spell sequence, the user has insufficient authorization to perform a spell (e.g., a wand 125 is not authorized to perform the spell or obtain the spell output), the performance of a spell was done at an unauthorized location and/or spatial coordinates, the user has insufficient game play property/points for performing the spell or obtaining the spell output, the performance of the spell is impossible (e.g., an “open door” spell is performed when there is no door proximate to the wand 125), a game play parameter item in the gaming environment 100 is interfering with the spell (“fireball inhibitor prevents fireball spells in a particular room”), and the like.
Wand 125 may be configured to send/receive data to/from a computing device 105, one or more devices 101, and/or a network element (e.g., accounting server 120, etc.) via a direct wireless connection and/or via a network connection (e.g., network 115). For example, the wand 125 may directly connect with one or more devices via the direct wireless connection by using, for example, Bluetooth and/or BLE protocols, WiFi protocols, Infrared Data Association (IrDA) protocols, ANT and/or ANT+ protocols, and the like. In some embodiments, wand 125 may connect with one or more devices (e.g., devices 101 and/or computing device 105) via network 115 in accordance with one or more wireless communications protocols and/or one or more cellular phone communications protocols. In such embodiments, wand 125 may be configured to operate in accordance with the Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (WCDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11ac, and/or IEEE 802.11n, voice over Internet Protocol (VoIP), Wi-MAX, Long Term Evolution (LTE), and/or any other wireless communication protocols.
In various embodiments, by utilizing a direct wireless connection or a network connection, wand 125 may operate, control, or otherwise activate one or more external feedback/output devices (also referred to as “second devices” herein). Referring to FIGS. 1A-1C, the one or more external feedback/output devices may include the devices 101 and/or the computing device 105. The one or more second devices may be used to provide feedback or another like indication as to whether a spell has been properly performed or not (within a certain margin of error). The second devices may include one or more components of computing devices 105 and/or other computing devices, one or more auxiliary devices, one or more IoT devices, one or more audio devices, one or more display devices, one or more other wands 125, and the like. The wand 125 may instruct or otherwise activate the one or more second devices by communicating one or more instructions or control signals over the direct wireless connection or via the network connection to the one or more second devices (also referred to as “second instructions” herein). The second instructions may be defined by a spell output, which is associated with one or more spells, wherein the spell output indicates to issue the second instructions upon completion of an associated spell. The second instructions and/or control signals may instruct and/or control the one or more second devices to execute desired program code when one or more second devices include the computing device 105 and/or one or more other computing devices; access one or more services associated with one or more IoT devices when the one or more second devices include one or more IoT devices; output a desired audio output when the one or more second devices include one or more audio devices; output a desired video output when the one or more second devices include one or more display devices; and/or record a spell output when the one or more second devices include one or more other wands 125 and/or one or more other computing devices 105. Furthermore, in various embodiments, the second instructions may indicate to turn off or shut down various functions, such as shutting off a video display, etc. In some embodiments, the second instructions may include sending (additional) game-related messages to other users in the gaming environment 100 (e.g., “fireball from user A exploded at position (X,Y,Z) including 10 points damage to players and/or devices within 5 meters of position (X,Y,Z)”). Moreover, the second instructions may indicate that a gesture was incorrectly performed or missing from a spell sequence, the user has insufficient authorization to perform a spell (e.g., a wand 125 is not authorized to perform the spell or obtain the spell output), the performance of a spell was done at an unauthorized location and/or spatial coordinates, the user has insufficient game play property/points for performing the spell or obtaining the spell output, the performance of the spell is impossible (e.g., an “open door” spell is performed when there is no door proximate to the wand 125), a game play parameter item in the gaming environment 100 is interfering with the spell (“fireball inhibitor prevents fireball spells in a particular room”), and the like.
According to various embodiments, wand 125A may include or otherwise be associated with a region of effect (ROE) 130A and wand 125B may include or otherwise be associated with a region of effect (ROE) 130B (collectively referred to as “region of effect 130” or “ROE 130”). ROE 130 defines an area in which a spell output is to be applied such that one or more devices 101 within the ROE 130 are activated when a spell is performed using the wand 125. In various embodiments, the ROE 130 is determined by the computing device 105 coupled with the wand 125 (e.g., computing device 105A coupled with wand 125A as shown in FIGS. 1A-1C). In such embodiments, the computing device 105 may determine a shape and/or size of the ROE 130, and determine whether one or more devices 101 and/or other wands 125 are within the ROE 130 based on a position of the devices 101 and/or other wands 125. The positions of the one or more other devices 101 and/or other wands 125 may be indicated by an identifier or other like signal being broadcast by a device 101 and/or wand 125, and/or based on a position of the wand 125 relative to the position of a device 101 and/or other wand 125. In other embodiments, the wand 125 may determine the shape and/or size of the ROE 130, and determine whether one or more devices 101 and/or other wands are within the ROE 130. In some embodiments, when multiple devices 101 and/or other wands 125 are within the ROE 130, the computing device 105 and/or wand 125 may activate issue second instructions to each device within the ROE 130. In various embodiments, when multiple devices 101 and/or other wands 125 are within the ROE 130, the computing device 105 and/or wand 125 may determine a spell output target device based on a position of the wand 125 and/or an orientation of the wand 125. The spell output target device may be a device to which the wand 125 is directed by the user, which may be indicated by a portion from which the ROE 130 emanates. Furthermore, in some embodiments, the spell output target device may include multiple second devices while excluding other second devices within the ROE 130.
In various embodiments, the spell output intensity may be based on a distance between the wand 125 and a position of the spell output target device, and/or the spell output intensity may be based on a position of the spell output target device within the ROE 130. The spell output intensity may indicate an intensity at which the one or more second devices within the ROE 130 are to be activated. For instance, a device that is located relatively far from the wand 125 may be activated at a lower intensity than a device that is located relatively close to the wand 125. By way of example, an audio device that is relatively far from the wand 125 may play a desired audio output at a lower volume and/or decrease the volume over time, whereas when the audio device is relatively close to the wand 125, the audio device may play the desired audio output at a higher volume. In various embodiments, spell output intensity may also indicate a brightness level for a display device and/or a device including LEDs, may indicate a termination point of an audio and/or video output that is before the audio and/or video output's prescribed ending, may specify an amount to move an electro-mechanical device, may indicate a game play properties/effects (e.g., damage amounts, health restoration amount, a virtual or physical on/off, open/close, and/or lock/unlock indication, physical dispense amount (vending machines, etc.) a virtual dispense amount for virtual property (points, health, damage loss, gold count, etc.)), and/or the like. In this way, the spell output may have an appearance of attenuation based on the user's position within the gaming environment 100.
In some embodiments, device attributes may be used to determine a spell output and/or spell output intensity. The device attributes may indicate a device type and/or status of one or more peripheral devices and/or internal components (e.g., processor speed, memory utilization, battery charge amounts, etc.) of the wand 125. For example, the wand 125 and/or the computing device 105 may determine that an amount of charge remaining in a battery of the wand 125 is 50%, and the wand 125 and/or the computing device 105 may then reduce the spell intensity output by 50%.
Referring now also to FIG. 1D, the ROE 130 is defined by or otherwise has a shape of a cone. In various embodiments, the cone may have an area that is defined by a height h and a base radius r. In various embodiments, the base may be in the shape of a circle or an ellipsis having a radius r. However, in some embodiments, the ROE 130 may be in a pyramidal shape such that the base is a square, rectangular or any other quadrilateral shape. Additionally, although ROE 130 is shown by FIGS. 1A-1D as having a conical shape, in various embodiments, ROE 130 may have a cylindrical shape or may have any other type of shape. As shown, an apex of the cone originates from a tip 208, but in some embodiments, the apex could originate from any other like portion of the wand 125. The area of the cone may be calculated using known equations or algorithms for calculating the area and/or volume of a cone. However, it should be noted that the height h, the radius r, and/or the shape of the base may be based on a specific game being played, a specific gaming environment, a spell intensity associated with a user of the wand 125, and the like. For example, the height h and/or the radius r of the ROE 130 may be predefined according to one or more game design criteria, and when the spell intensity is determined to be reduced by 50% due to a battery of the wand 125 having a 50% charge capacity, the values of the height h and/or the radius r of the ROE 130 may be reduced by 50% or may be reduced or otherwise adjusted according to some other game-related value/criteria/rules. By way of another example, the height h and/or the radius r of the ROE 130 may be predefined according to one or more game design criteria, and when the spell intensity is determined to be increased by 50% due to an auxiliary device being proximate to the wand 125, the values of the height h and/or the radius r of the ROE 130 may be increased by an amount indicated by an auxiliary device identifier and/or may be increased or otherwise adjusted according to some other game-related value/criteria/rules.
According to various embodiments, computing devices 105 may be a physical hardware computing device capable of communicating with a one or more other hardware computing devices (e.g., wand 125, devices 101, accounting server 120, one or more associated databases (not shown), and the like) via a communications interface, such that computing device 105 is able to receive one or more signals and/or data streams from the other devices in the gaming environment 100. Computing devices 105 may include a transmitter/receiver (or alternatively, a transceiver), one or more memory devices, one or more processors, one or more sensors, and/or other like components. Computing devices 105 may be designed to sequentially and automatically carry out a sequence of arithmetic or logical operations; equipped to record/store digital data on a machine readable medium; and transmit and receive digital data via one or more network devices. Computing devices 105 may include devices such as desktop computers, laptop computers, mobile computing devices (e.g., smart phones, tablet personal computers, wearable computing devices, a handheld messaging device, a personal data assistant, an electronic book reader, and the like), a home or local server, and/or any other physical or logical device capable of recording, storing, and/or transferring digital data via a connection to a network device.
In various embodiments, computing devices 105 may include a network interface (e.g., network interface 430 described with regard to FIG. 3B) configured to connect computing device 105 to one or more other devices wirelessly via a transmitter and a receiver (or optionally a transceiver) and/or via a wired connection using a communications port. Computing devices 105 may be configured to send/receive data to/from one or more other hardware computing devices, and/or network devices, such as a router, switch, hub, or other like network devices, via the network interface using the wired connection and/or the wireless connection. Computing devices 105 may be configured to obtain a data (in the form of a data stream, data packets, and/or other like messages) from a network element (e.g., accounting server 120) via the network interface, and utilize the data according to the various example embodiments described herein. Computing devices 105 may communicate over the network 115 in accordance with one or more wireless communications protocols and/or one or more cellular phone communications protocols. For example, computing device 105 may be configured to operate in accordance with the Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (WCDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11ac, and/or IEEE 802.11n, voice over Internet Protocol (VoIP), Wi-MAX, Long Term Evolution (LTE), and/or any other “wireless” communication protocols, including RF-based, optical, and so forth.
Computing devices 105 may include or be otherwise associated with various input and output/feedback devices to enable user interaction with the computing device 105 and/or peripheral components or devices associated with the computing device 105 by way of one or more user interfaces or peripheral component interfaces. The user interfaces may include, but are not limited to a physical keyboard or keypad, a touchpad or touchscreen, display device(s), speakers, microphones, image sensors, haptic feedback devices and/or one or more actuators, and the like. Peripheral component interfaces may include, but are not limited to, a non-volatile memory port, a universal serial bus (USB) port, an audio jack, and a power supply interface. Furthermore, the computing device may to enable user interaction with peripheral or other like external devices utilizing one or more wireless communications protocols, such as Bluetooth protocols, WiFi protocols, IrDA protocols, ANT and/or ANT+ protocols, etc. Using the one or more wireless communications protocols, the computing devices 105 may connect with, or otherwise utilize devices 101. The devices 101 may be output/feedback devices, such as display devices (e.g., TVs or “smart TVs”, a computing device and associated displays, augmented reality head-mounted (or helmet-mounted) devices, etc.) and/or audio devices (e.g., Bluetooth earpiece or headphones, speakers, etc.), “Internet of Things” (IoT) devices (e.g., automated sensors, motors, etc.), and/or auxiliary devices (which are described in detail elsewhere). Furthermore, the computing devices 105 may connect or otherwise couple with the wand 125 by way of the one or more wireless communications protocols.
Computing device 105 may be equipped with location (or alternatively “geolocation”), positioning, and/or navigation circuitry, such as a Global Positioning System (“GPS”) receiver, as well as software to convert received GPS signals into a location and/or position (within some margin of error). In various embodiments, alternate positioning systems may be employed, such as wireless network signal-strength-based indoor positioning system (IPS), hybrid systems combining global and local positioning systems, and/or other like positioning and/or location detection systems. However, in various embodiments, geolocation and/or positioning information may come from other sources including an IP address, Wi-Fi and/or Bluetooth MAC address, radio-frequency identification (“RFID”), WiFi connection location, GSM/CDMA cell IDs, and the like. Computing devices 105 may include one or more sensors, such as an accelerometer, gyroscope, gravimeter, magnetometer, and/or another like devices that are configured to measure and/or detect a motion, an acceleration, and/or an orientation of the computing devices 105. In such embodiments, the computing devices 105 may be configured to determine a magnitude and direction of an acceleration and/or motion of the computing device 105, and convert the acceleration and/or motion of the computing device 105 into position and/or orientation information. The positions and/or orientations (or changes in the positions and/or orientations) may be used to determine a spell type, spell direction, spell intensity, etc. according to the various example embodiments described herein. For example, the computing device 105 may use its own position and/or orientation data, position and/or orientation data of one or more devices 101 that the computing device 105 has determined, in combination with any position and/or orientation data included with a spell sequence in order to determine a spell type, spell direction, spell intensity, etc.
Computing devices 105 may be configured to run, execute, or otherwise operate one or more applications. The applications may include native applications, web applications, and hybrid applications. The native applications may be used for operating the computing device 105, such as using a camera or other like sensor of the computing device 105, GPS functionality of the computing device 105, an accelerometer of the computing device 105, cellular phone functionality of the computing device 105, and other like functions of the computing device 105. Native applications may be platform or operating system (OS) specific. Native applications may be developed for a specific platform using platform-specific development tools, programming languages, and the like. Such platform-specific development tools and/or programming languages may be provided by a platform vendor. Native applications may be pre-installed on computing devices 105 during manufacturing, or provided to the computing device 105 by an application server (e.g., accounting server 120) via a network (e.g. network 115). Web applications are applications that load into a web browser of the computing device 105 in response to requesting the web application from a service provider (e.g., a web server that may be associated with accounting server 120). The web applications may be websites that are designed or customized to run on a mobile device by taking into account various mobile device parameters, such as resource availability, display size, touchscreen input, and the like. In this way, web applications may provide an experience that is similar to a native application within a web browser. Web applications may be any server-side application that is developed with any server-side development tools and/or programming languages, such as PHP, Node.js, ASP.NET, and/or any other like technology that renders HTML. Hybrid applications may be a hybrid between native applications and web applications. Hybrid applications may be a standalone, skeletons, or other like application containers that may load a website within the application container. Hybrid applications may be written using website development tools and/or programming languages, such as HTML5, CSS, JavaScript, and the like. Hybrid applications use browser engine of the computing device 105, without using a web browser of the computing device 105, to render a website's services locally. Hybrid applications may also access mobile device capabilities that are not accessible in web applications, such as the accelerometer, camera, local storage, and the like. According to various embodiments, the various example embodiments for creating, resolving, and/or discovering one or more spells performed by the wand 125 as described herein, such as the processes 400-600, may be implemented as a native application, a web application, and/or a hybrid application. Such an application may be included in the wand 125 according to various example embodiments.
According to various embodiments, devices 101 may be any object, device, sensor, or “thing” that is embedded with hardware and/or software components that enable the object, device, sensor, or “thing” to communicate with another device (e.g., computing devices 105, accounting server 120, another device 101, etc.) over a network (e.g., network 115). The devices 101 may be the same or similar to the “second devices” as described herein, and the devices 101 may also be referred to as “second devices 101”. In some embodiments, the device 101 may communicate with other devices with little or no user or human intervention, such as when the device 101 is an IoT device. In this regard, devices 101 may include a transmitter/receiver (or alternatively, a transceiver), one or more memory devices, and/or one or more processors. Furthermore, devices 101 may be embedded with or otherwise include a transmitter or other like device that broadcasts an identification signal. In various embodiments, the identification signal may be a radio-based signal, such as a Wi-Fi signal, BLE signal, an active RFID signal, an infrared signal, and the like. According to various embodiments, the identification signal may comprise one or more data packets or data frames, where the data packets or data frames include a unique identifier associated with the device 101 transmitting the identification signal. In various embodiments, the unique identifier (or alternatively, “identifier” or “identification information”) may include a universally unique identifier (UUID), an electronic product code (EPC), a media access control address (MAC address), an Internet Protocol (IP) address, an Apache QPID address, and/or any other like identification information. It should be noted that one or more of the devices 101 may be manufacturer, developed, and/or deployed in the gaming environment 100 by different device manufacturers.
In various embodiments, devices 101 may be output/feedback devices, such as display devices, audio devices, IoT devices, and the like. Devices 101 that are IoT devices may include any type of sensor, meter, or other like device that can capture and/or record data associated with an event. For instance, in various embodiments, IoT devices may be biotic sensors and/or devices, such as monitoring implants, biosensors, biochips, and the like. Additionally, IoT devices may be abiotic sensors and/or devices, such as autonomous sensors and/or meters, Machine Type Communications (MTC) devices, machine to machine (M2M) devices, and the like. An event may be any occurrence of an action, such as a temperature change, a change in data such as reaching a data threshold, a game-play point/property/inventory level/amount change, a heart rate, a state/position/orientation change of a device, and the like. In various embodiments, an event may be detected by one or more IoT devices based on sensor outputs, timer values, user actions, messages from an a computing device, and the like. Once data associated with an event is captured and recorded by the IoT device or other like device 101, the captured data may be relayed through the network 115 and reported to a service provider (e.g., an operator of the accounting server 120), computing device 105, and/or another one of the devices 101. The service provider and/or game operator (e.g., the accounting server 120), a user of the computing device 105A and/or the wand 125A, a user of the computing device 105B and/or the wand 125B, and/or another device 101 may take an appropriate action based on a notification of the event (e.g., calculate a score with respect to a game or quest, and the like, perform a spell, activate/deactivate a device and/or component of a device, etc.). In various embodiments, devices 101 may connect with or otherwise communicate with the computing device 105 and/or accounting server 120 via a direct wireless connection and/or via network 115. In such embodiments, the data associated with an event may be reported to the computing device 105 and/or accounting server 120 for the purposes of spell determination and/or immersive game play as described herein. It should be noted that the devices 101 may be configured to report data/events on a period or cyclical basis, and/or based on a desired event that is captured and recorded by a device 101.
In various embodiments, the computing device 105 and/or wand 125 may receive from one or more devices 101 data associated with a captured event and the computing device 105 and/or wand 125 may physically control the devices 101 by transmitting instructions or other like control signals to the device 101. The instructions and/or control signals may instruct and/or control the devices 101 to execute desired program code when one or more of the devices 101 include one or more other computing devices; access one or more services associated with one or more IoT devices when one or more of the devices 101 include one or more IoT devices; output a desired audio output when one or more of the devices 101 include one or more audio devices; output a desired video output when one or more of the devices 101 include one or more display devices; and/or record a spell output when one or more of the devices 101 include one or more other wands 125 and/or one or more other computing devices 105.
In various embodiments, such as when the second devices 101 are IoT devices, the second devices 101 may include one or more electro-mechanical components which allow the second device 101 to change its state, position, and/or orientation. These electro-mechanical components may include one or more motors, step motors, actuators, wheels, thrusters, propellers, claws, clamps, hooks, and/or other like electro-mechanical components. In such embodiments, the second devices 101 may be configured to change its state, position, and/or orientation based on one or more captured events and/or instructions or control signals received from the computing device 105 and/or wand 125. For example, in embodiments where a second device 101 is an actuator that opens/closes a window, the actuator may change its state (e.g., fully open, fully closed, or partially open/closed) based on instructions from the computing device 105, wand 125, and/or accounting server 120. In such embodiments, the instructions to change the state of the actuator may be issued from the computing device 105, wand 125, and/or accounting server 120 based on whether or not a spell was determined to have been performed correctly or not. In some embodiments, proximity of the wand 125 to an associated device 101 may be required in order for the spell to have an effect. For example, an “open door” spell may have no effect unless the wand 125 is within desired distance from the door to be opened. It should be noted that a performance of one or more actions (e.g., the collection/reporting of data, altering a state, position, and/or orientation, etc.) by one or more devices 101 may be referred to as a “service”. The devices 101 may be grouped according to functions that they may perform, where one or more of the functions are associated with one or more services. Furthermore, in various embodiments, the devices 101 may also communicate data associated with one or more events to the accounting server 120 via a network connection, wherein the accounting server 120 may track the progress of a game or otherwise adjust a user's profile according to spell outputs performed by the devices 101.
In various embodiments, one or more of the second devices 101 may be “auxiliary devices”. The auxiliary devices may include the same or similar components as the IoT devices discussed herein (e.g., transmitter/receiver, processor(s), memory device(s), etc.). However, in various embodiments the auxiliary devices serve to alter, adjust, or otherwise modify a spell and/or spell intensity. For example, in some embodiments, the auxiliary device may amplify, diminish, or delay an effect of one or more spell outputs. Additionally, the auxiliary device may alter a spell output to include one or more additional first instructions and/or second instructions, such as obtaining and playing an audio output when a spell for illuminating an LED is performed. It should be noted that in some embodiments, an auxiliary device may amplify a spell intensity of a first spell while diminishing the effect of a second spell. In various embodiments, a spell and/or spell intensity may be modified or adjusted when an auxiliary device is within a desired region surrounding the wand 125, or when the auxiliary device is otherwise proximate to the wand 125. In this regard, in various embodiments, the auxiliary devices may be in the form of a wearable device, such as a bracelet, ring, medallion, hat, glove, and the like, while in some embodiments, the auxiliary devices may have a form that allows the auxiliary device to attach itself to a housing 205 of the wand 125. However, the form and/or shape of the auxiliary devices may be based on one or more design choices.
In various embodiments, the proximity of an auxiliary device to the wand 125 may be based on position information contained in an auxiliary device identifier or other like signal that is broadcast by the auxiliary device, which may be obtained by the computing device 105 and/or the wand 125 by scanning of a region surrounding the wand 125 for an auxiliary device signal that is broadcast by the auxiliary device. The auxiliary device identifier may be obtained by the computing device 105 and/or the wand 125, which may then determine the position of the auxiliary device relative to the wand 125 in a similar manner as discussed herein, such as by using IPS and/or triangulation methods.
The auxiliary device identifier may also indicate a desired alteration for a spell output and/or a desired alteration or adjustment to a spell output intensity. For example, the auxiliary device identifier may indicate an amount to increase/decrease area of the ROE 130, such as by adjusting the height h and/or the radius r, etc. By way of another example, the auxiliary device identifier may indicate that a spell output may include additional audio and/or video outputs to be played/displayed with an audio and/or video output associated with a given spell and/or a location from which the additional audio/video outputs may be obtained, such as a webpage address, a memory location, and/or other like location information. By way of yet another example, the auxiliary device identifier may indicate that a spell output may yield additional game related points/property within a game, or may decrease another player's points/property by a specified amount when a spell is performed in the presence of another user (see e.g., FIG. 1C). In some embodiments, the desired alteration to the spell output or spell output intensity may be based on a number of times that a spell has been cast using the auxiliary device, and/or based on any other like indication indicating a number of times that the auxiliary device has been used. The number of times that the auxiliary device has been used may be factored into a game or quest, wherein a game operator (e.g., an operator of accounting server 120) or other like entity may limit the number of times that an auxiliary device may be used and/or may diminish the effect that an auxiliary device has based on the amount of usage of the auxiliary device. To this end, in various embodiments, the auxiliary device may include a counter, which indicates a number of uses or a number of spell alterations, and the auxiliary device may provide the counter value in the auxiliary device identifier. In such embodiments, the auxiliary device may increment or decrement the counter each time a spell is cast (i.e., after execution of a spell output). The computing device 105 and/or the wand 125 may then determine whether the spell output may be altered using the auxiliary device based on the auxiliary device counter value, such that, when the auxiliary device counter value has reached an alteration threshold, the alteration to the spell output may be deemed to have expired. In some embodiments, the auxiliary device counter may be loaded with a (or alternatively “predefined”) value, and the counter may be decremented each time a spell is cast with the auxiliary device. In such embodiments, the alteration threshold may be zero. In other embodiments, the auxiliary device counter may be set at zero and incremented each time a spell is cast with the auxiliary device. In such embodiments, the alteration threshold may be a desired (or alternatively “predefined”) integer that is greater than zero, and the alteration may be diminished or otherwise adjusted based on the integer value. For example, the counter value may be set at 10, the spell output intensity may be increased by 100% when the auxiliary device is used a first time (counter vale of 10), and the spell output intensity may be increased by 90% when the auxiliary device is used a second time (counter vale of 9), and so forth. Moreover, in some embodiments, a determined distance or proximity of the auxiliary device may be used to alter the spell output and/or spell output intensity. For example, in some embodiments, an auxiliary device may increase a size and/or shape of the ROE 130 by a first factor when the auxiliary device is attached to the wand 125, and the auxiliary device may increase a size and/or shape of the ROE 130 by a second factor when the auxiliary device is at a specified distance from the wand 125, wherein the first factor is greater than the second factor.
It should be noted that in various embodiments, the auxiliary devices may not include the auxiliary counter. In such embodiments, the accounting server 120, the computing device 105, and/or the wand 125 may include auxiliary device counters, or similar functionality, to track the usage of corresponding auxiliary devices. In such embodiments, the accounting server 120, the computing device 105, and/or the wand 125 may obtain the auxiliary device identifier via a direct wireless connection or a network connection, and may adjust a user profile and/or increment/decrement an auxiliary device counter accordingly.
According to various embodiments, beacon 110 may be a network element or a transmitting/receiving device configured to provide communication services and positioning services to various devices (e.g., devices 101, computing device 105, and/or wand 125) operating within a gaming environment 100 or a communications network (e.g., an enterprise private network, virtual private network, local area network (LAN), a virtual local area network (VLAN), and/or any other like computer network). The beacon 110 may be a wired or wireless access point, a router, a switch, a hub, and/or any other like network device that allows computing devices to connect to a network. In some embodiments, the beacon 110 may include one or more processors, a network interface, one or more transmitters/receivers connected to one or more antennas, and computer readable media. The one or more transmitters/receivers may be configured to transmit/receive data signals to/from one or more devices 101 and/or computing devices 105. The beacon 110 may process and/or route data packets according to one or more communications protocols, such as Ethernet, Point-to-Point Protocol (PPP), High Level Data Link Control (HDLC), Internet Protocol version 4 (IPv4), Internet Protocol version 6 (IPv6), and/or any other like protocols. The beacon 110 may employ one or more network interfaces in order to allow devices 101 and/or computing devices 105 to connect to network 110, such as Ethernet, Fibre Channel, G.hn or ITU-T, 802.11 or Wi-Fi, Bluetooth, and/or any other like network connection interfaces. In various embodiments, beacon 110 may be a low-powered transmitter/receiver that may be used to notify various devices of their position relative to one or more other devices. In such embodiments, the beacon 110 may utilize BLE proximity sensing methods to transmit an identifier to devices within a vicinity of the beacon 110.
In various embodiments, the beacon 110 may provide the wand 125, computing devices 105, and/or devices 101 with a position of the beacon 110 such that the wand 125, computing devices 105, and/or devices 101 may determine their own position relative to one or more other devices by way of triangulation. In such embodiments, an exact geolocation or position may not be necessary for the performance of a spell output as long as the various devices in the gaming environment 100 may determine their own position relative to one or more other devices in the gaming environment 100. One method of triangulation may include the computing device 105A performing a received signal strength indication (RSSI) calculation of one or more signals generated by one or more other devices (e.g., the computing device 105B and/or other computing devices 105, one or more devices 101, etc.) and a RSSI calculation of one or more signals generated by the beacon 110. Another method of triangulation may include the computing device 105A and/or the wand 125A obtaining a RSSI calculation performed by computing device 105B and/or wand 125B of one or more signals generated by another device and/or a RSSI calculation of one or more signals generated by the beacon 110, which may then be shared with the computing device 105A. Another method of triangulation may include the beacon 110 performing a RSSI calculation of one or more signals generated by multiple devices in the gaming environment 100, which may then be shared with the computing devices 105 and/or the wands 125 in the gaming environment 100. The aforementioned RSSI calculations may be performed by the beacon 110, the wands 125, and/or the computing devices 105 according to know methods. Additionally, instead of, or in addition to using the RSSI of the signals generated by the various devices in the gaming environment 100, example embodiments may also utilize other information associated with the one or more signals, such as a path loss measurement, packet delay time, a signal to noise ratio, a measure of throughput, a jitter, latency, a round trip time (RTT), a number of interrupts, an out-of-order delivery of data packets, and/or other like parameters. Furthermore, any of the aforementioned triangulation methods may be combined to determine a device's position relative to one or more other devices in the gaming environment 100. As such, in various embodiments, more position and/or orientation information may become available as a number of devices in a gaming environment 100 increases. In some embodiments, only the RSSI of a proximate device is used instead of one or more of the aforementioned triangulation methods, such as by defining that a signal strength of a second device 101 must be greater than a threshold to indicate that the computing device 105 and/or the wand 125 is within some desired distance from the second device 101. Moreover, directional signal reception or/and transmission of one or more directional antennas may be also used to determine orientation of the various devices in gaming environment 100. As discussed previously, one or more gestures may be performed to obtain one or more spell outputs. In some embodiments, one or more gestures may be designed to facilitate the orientation calculation, such as when a user is required to manipulate the wand 125 in a defined manner and/or at a defined position in order to obtain the spell output. For example, a quest or game may be defined such that a player is required to move a wand from side-to-side so in or around a geocaching device wherein the side-to-side motion would place the wand in the middle of a coverage sector of a directional antenna of the geocaching device. In this case, directional antenna of the wand 125 and/or a directional antenna of the geocaching device may estimate an approximate wand orientation relative to the geocaching device.
In some embodiments, voice commands issued by one or more users may be used to determine a position of one or more device. For example, in a gaming environment 100 that has an electronically controlled window, which may be configured to turn opaque or transparent based on applied electrical charge. A “Transparency” spell might be used to make the window transparent, wherein a user pointing the wand 125 at the window and issuing a voice command of “Transparify” or other such utterance. Because the utterance relates to windows, as opposed to door locks, etc., the voice command may provide additional information or another like indication of a region in which a wand 125 is located. In some embodiments, dead reckoning may be used to maintain orientation and/or position of the wand 125 and/or computing device 105. Dead reckoning may include a process of calculating a device's current position by using a previously determined position (or fix), and adjusting that position based on known and/or estimated speeds over elapsed time and a projected movement pattern. Dead reckoning methods may be used to estimate a rough or general region in which one or more devices are location. It should be noted that relatively low accuracy of the orientation and position may be needed, for example, to indicate that dueling wands 125 (as shown in FIG. 1C) may each be pointing in each other's direction. Additionally, since the dead reckoning may provide relatively low accuracy, the dead reckoning calculations may be used to complement and/or to periodically adjust the other positioning and/or triangulation methods described herein.
It should also be noted that, in addition to the various position determination methods and/or triangulation methods discussed above, when the gaming environment 100 is an arena or other like defined region or venue, additional mechanisms may be added to the gaming environment 100 for position determination, such as one or more cameras or other like sensors, one or more stationary targets, and/or floor-mounted pressure sensors. The cameras and/or sensors (optical and infra-red) may be used in combination with known vision recognition algorithms, which may determine a relative distance of the user (either the user's body or the computing device 105) to a known position within the field of view. In various embodiments, simplify processing may be achieved using one or more targets, such as UV fluorescent or IR-reflecting “dots”. The one or more targets may be stationary landmarks, or wands 125, computing device 105, and/or the user may include easily identifiable visual or non-visible markers. In some embodiments, Real-Sense Technology® developed by Intel® may be employed to further enhance position and/or orientation determination.
According to various embodiments, network 115 may be any network that allows computers to exchange data. Network 115 may include one or more network elements (not shown) capable of physically or logically connecting computers. The network 115 may include any appropriate network, including an intranet, the Internet, a cellular network, a local area network (LAN), a personal network or any other such network or combination thereof. Components used for such a system can depend at least in part upon the type of network and/or environment selected. Protocols and components for communicating via such a network are well known and will not be discussed herein in detail. Communication over the network 115 may be enabled by wired or wireless connections, and combinations thereof.
According to various embodiments, accounting server 120 may be one or more hardware computing devices that may include one or more systems and/or applications for providing one or more services. The accounting server 120 may include one or more processors, one or more memory devices and/or computer readable storage medium, and one or more network interfaces. Additionally, accounting server 120 may be a single physical hardware device, or may be physically or logically connected with other network devices, such that the accounting server 120 may reside on one or more physical hardware devices. Moreover, accounting server 120 may be connected to, or otherwise associated with one or more data storage devices (not shown).
The accounting server 120 may be any device capable of receiving and responding to requests from one or more client devices (e.g., computing devices 105, wand 125, and/or devices 101) across a computer network (e.g., network 115) to provide one or more services. In various embodiments, the services may include accounting for, or otherwise operating an immersive gaming experience. In such embodiments, the accounting server 120 may alter or adjust a user profile associated with a user of the wand 125. The user profile may indicate game criteria or parameters associated with the user in connection with a game or quest, or in relation to multiple users playing one or more games or quests. The accounting server 120 may account for or otherwise track game play points/property and/or game play effects, such as virtual property/points tallies (including points, health, damage loss, gold count, power levels, “magical power”, etc.), a virtual or physical on/off, open/close, and/or lock/unlock indication, physical dispense amounts, virtual dispense amounts, and/or the like. In some embodiments, the casting of a spell may decrease the casting user's game play points/property by a desired amount of game play points/property and/or may decrease another user's game play points/property by a desired amount of game play points/property. In some embodiments, one or more spells may be defined by a game operator to require a desired amount of game play points/property (e.g., “magical power”, points, and/or the like) in order to cast the one or more spells or perform the spell outputs associated with those spells. In various embodiments, the game play properties may be represented as a numerical value that is accounted for by the accounting server 120. The user's magical power value may increase or decrease based on other factors, such has the passage of time, completing quests, proximity of devices 101, etc. Additionally, in some embodiments, a game operator may specify spells that may be used during a game and/or exclude other spells from being used during that game. In various embodiments, the accounting server 120 may track time-based conditions, such as the number of times during a time period that a spell has been performed, restricting a spell performance to a desired number of time or during desired times of a day, etc. In various embodiments, the accounting server 120 may track and/or account for multiplayer conditions, such as determining whether a spell is properly performed, which may require the performance of one or more gestures by one or more other users. For example, a spell may require a first user to perform a first bodily movement and utter a first voice command, followed by a second user performing a second bodily movement and uttering a second voice command. In other embodiments, the user may be required to perform their gestures concurrently.
Furthermore, in various embodiments, the accounting server may also track prerequisite conditions defined by a game. For example, a game operator may define that a user must complete some prerequisite task in order to perform one or more spells and/or obtain one or more spell outputs. In some embodiments, the prerequisite task may include activating one or more second devices 101. In such embodiments, the accounting server 120 may communicate with the one or more second devices 101 to obtain event data recorded by the one or more second devices 101 to determine whether the prerequisite task has been completed by the wand 125 and/or computing device 105. For example, the prerequisite task may indicate that the user must complete some physical exercise or submit information via a web based user interface. Furthermore, the accounting server 120 may account for third party (e.g., parent, commercial entity, etc.) controls, wherein a third party may be required to authorize a spell to be used. In some embodiments, restrictions to spell usage may further modify the various conditions listed above. Additionally, in some embodiments, a spell may be restricted to be performed only on specific wands 125, such as a premium upgraded wand 125, a user's wand 125 that is associated with a service or gaming subscription, and the like. In some cases, a game operator and/or an authorized third party may nullify a spell and/or a spell output, which may result in a loss of points, status, or other game/quest progress.
It should be noted that in various embodiments, one or more spell may require coordination among the multiple users in a gaming environment 100. For example, in a wand duel game (as illustrated by FIG. 1C), the two computing devices 105A and 105B may be required to coordinate with each other to determine a specific timing and/or order that spells are cast by each user. In some embodiments, the accounting server 120 may provide the spell coordination between the two computing devices 105A and 105B. If the accounting server 120 is not involved with the coordination between users, the accounting server 120 may be responsible for final spell processing and resolution. The spell processing and resolution may include decrementing a user's available power level (virtual and/or physical) and/or a power level amount required for a certain spell. In some embodiments, the computing devices 105 may perform the spell processing and resolution, and may report the results of the spell processing and resolution to the accounting server 120. However, in some embodiments, messages related to spell processing and resolution may be sent directly between the two computing devices 105A and 105B and/or sent indirectly between the two computing devices 105A and 105B via the back-end service (e.g., accounting server 120) and/or via a network connection.
For adjusting the user profile and/or operating a game or quest, the accounting server 120 may also perform or facilitate user setup and play registration, including associating a specific wand 125 with authorized users, initiate and control software and/or firmware updates of the elements or devices within the gaming environment 100, record the results associated with one or more games or quests, provide requested user authentication credentials, allow for recording new spells associated with the wand 125, provide content management, provide user interfaces and/or control elements for setting up new games/quests and/or modifying existing spells and/or games/quests, and (optionally) perform computationally intensive tasks.
In providing one or more game-related and/or non-game-related services, the accounting server 120 may be able to generate content such as text, graphics, audio, and/or video to be transferred to computing device 105, which may be served to the wand 125 and/or the one or more devices 101 by way of a web server (not shown) in the form of HTML, XML, MPEG-DASH, and/or any other appropriate structured language. The handling of all requests and responses, (e.g., requests for item information and the information provided in response) as well as the delivery of content between the computing devices 105 and/or wand 125 and the accounting server 120 may be handled by the web server. The accounting server 120 may include an operating system that may provide executable program instructions for the general administration and operation of accounting server 120, and may include a computer-readable medium storing instructions that, when executed by a processor of the application server 120, may allow the accounting server 120 to perform its intended functions. Suitable implementations for the operating system and general functionality of the servers are known or commercially available, and are readily implemented by persons having ordinary skill in the art, particularly in light of the disclosure herein. Furthermore, it should be understood that the accounting server 120 may not be required and the applications and software components discussed herein may be executed on any appropriate device or host machine.
As shown in FIGS. 1A-1D, only two computing devices 105A and 105B, two wands 125A and 125B, a single accounting server 120, and four devices 101 are present. However, according to various embodiments, any number of computing devices, any number of second devices, any number of servers, and/or any number of databases (not shown) may be present. Additionally, in some embodiments, accounting server 120 and/or one or more databases may be virtual machines and/or they may be provided as part of a cloud computing service. In various embodiments, accounting server 120 and one or more databases may reside on one physical hardware device, and/or may be otherwise fully integrated with one another. Thus, the depiction of the illustrative gaming environments 100 in FIGS. 1A-1D should be taken as being illustrative in nature, and not limited to the scope of the disclosure.
FIG. 1E illustrates a data flow diagram for the various devices operating in a gaming environments 100A-B, in accordance with various example embodiments. FIG. 1E illustrates the communications between the wand 125, an auxiliary device 101-1, a second device 101-2, the computing device 105, and the accounting server 120, as described with reference to FIGS. 1A-1C. It should be noted that in various embodiments the second device 101-2 may be replaced by another wand 125 (e.g., wand 125B).
Referring to FIG. 1E, at operation 1103, the computing device 105 may obtain a user profile and/or a plurality of spells from the accounting server 120. The user profile and/or the plurality of spells may be indicative of a game that the user of the wand 125 is playing or desires to play. Each of the plurality of spells may be associated with a desired spell sequence and one or more spell outputs. In various embodiments, the plurality of spells may be stored as an indexed table or other like database structure in a memory device of the computing device 105 or in cloud storage associated with the computing device 105. Such a database may be queried by the computing device 105 according to known methods. Subsequently or simultaneously to operation 1103, at operation 1105 the wand 125 detects one or more gestures being performed by a user of the wand 125.
At operation 1105, the wand 125 may generate a spell sequence based on the detected one or more gestures. At operation 1115, the computing device 105 may obtain a device identifier (ID) or other like signal from a device 101 within an ROE 130 of the wand 125. For example, as shown in FIG. 1A, which shows an example of a quest gaming environment 100A, at operation 1115, the computing device 105 may obtain a device identifier from device 101-2. By way of another example, as shown in FIG. 1B, which shows an example of a tagging gaming environment 100C, at operation 1115, the computing device 105A associated with wand 125A may obtain a device identifier from device 101-2, while the computing device 105B associated with wand 125B may obtain a device identifier from device 101-4. By way of yet another example, as shown in FIG. 1C, which shows an example of a wand duel that may occur in either gaming environment 100A or 100B, at operation 1115, the computing device 105A associated with wand 125A may obtain a device identifier from wand 125B, while the computing device 105B associated with wand 125B may obtain a device identifier from wand 125A.
At operation 1120, the computing device 105 may obtain an auxiliary device identifier (ID) from an auxiliary device 101-1. According to various example embodiments, the auxiliary device ID may indicate to increase a size of the ROE 130. At operation 1125, the spell sequence generated at operation 1110 is sent to the computing device 105. It should be noted that in various embodiments, operations 1115, 1120, and 1125 may be performed in an alternate order than shown, and/or operations 1115, 1120, and 1125 may be performed substantially simultaneously. At operation 1130, the auxiliary device 101-1 may decrement/increment its auxiliary device counter. It should be noted that operation 1130 may be performed at any time after the auxiliary device ID is obtained by the computing device 105, such as after a spell output is performed at one of operations 1155, 1160, 1165, and/or 1175.
At operation 1135, the computing device 1135 may determine a spell based on the spell sequence. In various embodiments, the computing device 105 may compare the spell sequence with the defined spell sequences of the plurality of spells to find or otherwise determine a matching spell. Once the computing device 105 determines the matching spell, the computing device 105 may determine the spell output associated with the matching spell.
At operation 1140, the computing device 105 may determine a spell output intensity and/or spell output adjustment based on the auxiliary device ID. In various embodiments, the spell output intensity may also be based on the information from the user profile and/or one or more game parameters associated with the game that the user is playing.
At operation 1145, the computing device 105 may determine a position of the wand 125 relative to one or more other devices. For example, the computing device 105 may scan the gaming environment 100A/B for signals that are broadcast by the devices 101, which may include one or more data packets, wherein the data packets may include an identifier or other like identifying information, such as a device name (e.g., serial number), device type, position information, and/or other like information. The computing device 105 may then extract the position information from the received data packets. In some embodiments, the computing device may obtain positioning information from the beacon 110, or may use one or more of the aforementioned triangulation methods to determine the positions of the devices 101 relative to the wand 125.
At operation 1150, computing device 105 may determine, based on the positions of the one or more devices relative to the wand 125, a size and/or area of the ROE 130 and whether one or more devices 101 are within the ROE 130. For example, as shown in FIGS. 1A-1B, device 101-2 is within the ROE 130A of wand 125A, which may be based on the auxiliary device 101-1 extending a range of the ROE 130A. By way of another example, as shown in FIG. 1C, wand 125B is within the ROE 130A of wand 125A, which may be based on the auxiliary device 101-1 extending a range of the ROE 130A, whereas the wand 125A is not within the ROE 130B of wand 125B, which may be due to wand 125B not being coupled with an auxiliary device.
At operation 1155, the computing device 105 may instruct first device(s) of the wand 125 to activate in accordance with the defined spell output delineated by the matching spell. The instructions to the first devices may be referred to as first instructions. In various embodiments, the first instructions may indicate to activate one or more internal components of the wand 125, such as one or more LEDs, one or more audio devices, one or more haptic feedback devices, one or more heating elements, and the like. The first instructions may include the spell output intensity level determined at operation 1140. The spell output intensity level may indicate a LED brightness level, color scheme, and/or sequence; a haptic feedback vibration strength and/or duration; and audio output volume and/or duration; a desired temperature level and/or heating during, etc. At operation 1165, the wand 125 may activate the first devices according to the first instructions. The first instructions may activate according to the spell output intensity level included in the first instructions.
At operation 1160, the computing device 105 may instruct second device(s) associated with the wand 125 to activate in accordance with the defined spell output delineated by the matching spell. The instructions to the second devices may be referred to as second instructions. In various embodiments, the second instructions may indicate to activate one or more external feedback/output devices. For example, according to the example embodiment shown by FIG. 1A, the second instructions may indicate to activate device 101-2, which is within the ROE 130A of wand 125A. By way of another example, according to the example embodiment shown by FIG. 1C, the second instructions may indicate to one or more first devices of wand 125B because wand 125B is within the ROE 130A of wand 125A. From the perspective of the wand 125A, the wand 125B is treated as an external device. Thus, wand 125B and the internal components of the wand 125B may be considered to be second device(s) according to the perspective of wand 125A. In such embodiments, the computing device 105A may transmit the second instructions to the computing device 105B via a network connection and/or a direct wireless connection. The computing device 105B may then transmit the second instructions from computing device 105A to the wand 125B for activation. In some embodiments, the computing device 105B may convert the second instructions from computing device 105A into first instructions for wand 125B such that the second instructions from the computing device 105A appear to be first instructions from the computing device 105B. At operation 1175, the device 101-2 in FIG. 1A (or the wand 125B in FIG. 1C) may be activated according to the second instructions. The second instructions may include the spell output intensity level determined at operation 1140. The spell output intensity level may indicate a desired audio output volume and/or duration, a desired video output volume, brightness, and/or duration, a state change level or amount, etc. When the second device 101 is another wand, such as the wand 125B shown in FIG. 1C, the second instructions and the spell output intensity level may be the same or similar as the first instructions and spell output intensity level discussed above.
At operation 1170, the computing device 105 may transmit an instruction (also referred to as “third instructions”) to adjust or otherwise alter the user profile. At operation 1180, the accounting server 1180 may adjust the user's profile in accordance with the third instructions. In some embodiments, the computing device 105 may update, adjust, and/or alter the user profile, and then transmit the updated user profile to the accounting server 120 to be applied against, or otherwise stored in association with, a game or quest.
It should be noted that according to various embodiments, the operations described above with respect to computing device 105 (e.g., spell determination, spell output intensity determination, position determination, etc.) may be performed by the wand 125, which is shown by the example embodiment of FIG. 1B and discussed in detail with regard to FIG. 3C.
FIG. 2 illustrates the components of a wand 125, in accordance with various example embodiments. As shown, the wand 125 includes a wand module 200, a housing 205, and input device 210, and first device 215.
According to various embodiments, the wand module 200 may include the various modules and circuitry to perform various functions according to the example embodiments described herein (see the discussion with regard to FIGS. 1A-1E and 3A-3C). To this end, the wand module 200 may include a communication module (e.g., communications module 330 as shown in FIGS. 3A and 3C), one or more memory devices (e.g., memory 350 as shown in FIGS. 3A and 3C), one or more processors (e.g., processor 310 as shown in FIGS. 3A and 3C), one or more sensors (e.g., sensors 306 as shown in FIGS. 3A and 3C), one or more output/feedback devices (e.g., first devices 215 as shown in FIGS. 2, 3A, and 3C), and/or other like components (e.g., as shown in FIGS. 3A and 3C).
According to various embodiments, the housing 205 may be any device or apparatus that is used to physically contain or otherwise include the wand module 200, one or more components of the wand 125 (e.g., input device 210 and/or first device 215). Housing 205 may be manufactured out of various materials and/or fibers, including metal, plastic, glass, rubber, wood, and/or any other like materials that are natural and/or synthetic. In various embodiments, housing 205 may be formed into various sizes and/or shapes based on one or more game design criteria or other like design choices, such as a game type or style, gaming environment or location, user demographics (e.g., age, gender, etc.), environmental conditions in which the wand 125 may be located (e.g., outside vs. inside), and/or other like criterion.
The housing 205 may be shaped, formed, or otherwise implemented as a wand, a scepter, a staff, a baton, a rod, a pen, a sword, a sabre, a screwdriver, a glove, a ring, a bracelet, stuffed or plush toy, a baseball bat, a lacrosse stick, a gun, and/or any other like device that may impart directionality. As shown, housing 205 also includes tip portion 208. In various embodiments, the one or more sensors included in the wand module 200 may be used to determine the directionality of the wand 125 in order to distinguish the tip portion 208 from the other portions of the housing 205. In this way, a user of the wand 125 may experience that “magic” or a spell output may be applied to a device in which the wand is directed by the user (i.e., when the user points the tip portion 208 at the device 101 or other wand 125).
Furthermore, housing 205 may be formed such that one or more auxiliary devices may attach to the housing. In some embodiments, auxiliary devices may attach to housing 205 using one or more attachment components (not shown). The one or more attachment components may include a magnetic component (i.e., any material, or combinations of materials, that attracts other permanent magnetic materials and/or any ferromagnetic materials), an adhesive component (i.e., any substance applied to a surface of at least two materials that binds them together and resists separation), and the like. In various embodiments, the one or more one or more attachment components may include one or more implements, such as hooks, clamps, fasteners, and the like. Furthermore, in some embodiments, the housing 205 may include one or more openings (not shown) configured to receive one or more protrusions of an auxiliary device, or the housing 205 may include one or more protrusions (not shown) configured to be received by one or more openings of an auxiliary device.
According to various example embodiments, the input device 210 may be any physical device that enables a user of the wand 125 to interact with the wand 125. For example, the input device 210 may by a button, a touchscreen device, a biotic sensor, and the like. In some embodiments, the input device 210 may be a peripheral component interface designed to provide interaction between the computing device 105 and one or more peripheral components. User interfaces may include, but are not limited to a physical keyboard or keypad, a touchpad, a speaker, a microphone, infrared heart rate monitoring device, an eye scanning device, a fingerprint or handprint scanning device, an EEG device, haptic feedback devices including one or more actuators and/or one or more TENS devices, etc. Peripheral component interfaces may include, but are not limited to, a non-volatile memory port, a universal serial bus (USB) port, an audio jack, and a power supply interface. It should be noted that input device 210 may be optional, and in various embodiments, the input device 210 may be omitted from the wand 125.
According to various example embodiments, the first device 215 may be any physical device that provides an output or feedback in response to one or more first instructions issued by the wand module 200. The first device 215 may be used to provide feedback or another like indication as to whether a spell has been properly performed or not (within a certain margin of error). As shown, the first device 215 may be an array of LEDs or other like illumination device(s). Although FIG. 2 shows that the first device 215 is located in the tip portion 208, in some embodiments, other portions of the housing 205 may include glowing/illumination devices to provide visual feedback. Additionally, the first device 215 and/or other like illumination devices in housing 205 (not shown) may provide room-level illumination (e.g., a flashlight mode). Furthermore, in various embodiments, the wand module 200 and/or the housing 205 may include one or more first devices 215, such as one or more audio devices, one or more haptic feedback devices or one or more actuators, one or more heating elements, and the like. In some embodiments, the first devices 215 may include a display device and/or a projector.
FIG. 3A illustrates the components of wand module 200, in accordance with various example embodiments. As shown, wand module 200 may include first devices 215, battery 305, sensors 306, input/output (I/O) interface 307, processor 310, device interface module 315, bus 320, I/O bus 325, communication module 330, and memory 350. In some embodiments, computing devices 105 may include many more components than those shown in FIG. 3A. However, it is not necessary that all of these generally conventional components be shown in order to disclose the example embodiments.
Memory 350 may be a hardware device configured to store an operating system 360 and program code for one or more software components, such as (optionally) an operating system (not shown), spell module 300, device interface module 315, and/or (optionally) one or more other applications (not shown). Memory 350 may be a computer readable storage medium that generally includes a random access memory (RAM), read only memory (ROM), a flash memory device, a solid state disk (SSD), a secure digital (SD) card, and/or other like storage media capable of storing and recording data. The program code, modules, and/or software components may also be loaded from a separate computer readable storage medium into memory 350 using a drive mechanism (not shown). Such separate computer readable storage medium may include a memory card, memory stick, removable flash drive, sim card, and/or other like computer readable storage medium (not shown).
During operation, memory 350 may include an (optionally) operating system, spell module 300, device interface module 315, and/or (optionally) one or more other applications (not shown). The operating system may manage computer hardware and software resources and provide common services for computer programs. The operating system may include one or more drivers, such as a first devices drivers, sensor drivers, battery drivers, and/or any other like drivers that provide an interface to hardware devices thereby enabling the spell module 300, the device interface module 315, and/or any other applications to access hardware functions without needing to know the details of the hardware itself. The operating system may be a general purpose operating system or an operating system specifically written for and tailored to the wand module 200. In embodiments where the operating system is not present, the device interface module 315 may provide the interface to the various hardware devices of wand module 200.
Device interface module 315 may be one or more software modules configured to interact with the various hardware components of the wand module 200 (e.g., first devices 215, battery 305, sensors 306, and input/output devices via I/O interface 307, etc.). In various embodiments, the device interface module 315 may obtain data from the one or more hardware components (e.g., sensor data), and provide the data to the spell module 300 and/or other applications (not shown) for processing. In various embodiments, the device interface module 315 may obtain first instructions via the communication module 330, and transmit or otherwise issue the first instructions the first instructions to output devices, such as the first devices 215, one or more first devices 215 communicatively connected via the I/O interface, one or more first devices 215 communicatively connected via the communications module 330.
Processor 310 may be configured to carry out instructions of a computer program by performing the basic arithmetical, logical, and input/output operations of the system. The processor 310 may include a single-core processor, a dual-core processor, a triple-core processor, a quad-core processor, one or more digital signal processors (DSPs), application-specific-integrated-circuits, field programmable gate arrays (FPGAs), and/or the like. The processor 310 may perform a variety of functions for the wand 125 and may process data by executing program code, one or more software modules, firmware, middleware, microcode, hardware description languages, and/or any other like set of instructions stored in the memory 350. The program code may be provided to processor 310 by memory 350 via bus 320, one or more drive mechanisms (not shown), and/or via communication module 330. In order to perform the variety of functions and data processing operations, the program code, modules, and/or software components may be executed by the processor 310. On execution by the processor 310, the processor 310 may cause wand module 200 to perform the various operations and functions delineated by the program code, modules, and/or software components.
For example, in various embodiments, the wand module 200 may include various modules configured to operate (through hardware and/or software) to obtain, from the sensors 306, sensor data that is indicative of one or more gestures performed using the wand 125, and generate or otherwise determine a spell sequence based on the sensor data as described herein. The one or more modules may include the spell module 300 and the device interface module 315. The various modules may be loaded into the memory 350 and executed by the processor 310. Once the various modules are loaded into memory 350 and executed by the processor 310, the processor 310 may be configured to cause wand module 200 to control the sensors 306 to determine or detect various gestures, wand positions and/or wand orientations, and the like; receive or obtain from the device interface module 315, via the sensors 306, the sensor data representative of the gestures; convert the sensor data representative of the one or more gestures into a spell sequence; provide the spell sequence to the communication module 330 to transmit the spell sequence to a computing device 105; and issue first instructions to the first devices 215 based on a spell output received from the computing device 105 via the communication module 330. In various embodiments, converting the sensor data into a spell sequence may include converting the one or more spatial coordinates (or spatial coordinate changes) into a markup language, a hypertext language, a text file, firmware, middleware, microcode, hardware description language, or any combination thereof that may be executed or otherwise interpreted by the processor 410 of the computing device 105 (see e.g., description of FIG. 4) or processor 310 of the wand module 200 (see e.g., description of FIG. 3C). While specific modules are described herein, it should be recognized that, in various embodiments, various modules may be combined, separated into separate modules, and/or omitted.
Bus 320 may be configured to enable the communication and data transfer between the processor 310 and memory 350. Bus 320 may comprise a high-speed serial bus, parallel bus, internal universal serial bus (USB), Front-Side-Bus (FSB), and/or other suitable communication technology for transferring data between components within wand module 200 and/or between wand module 200 and other like devices. I/O bus 325 may be configured to enable the communication and data transfer between the components of wand module 200. In various embodiments, the I/O bus 325 may be the same or similar as bus 320, while in some embodiments, I/O bus 325 may comprise a PCI bus, a PCI-Express (PCI-e) bus, a Small Computer System Interface (SCSI) bus, and the like.
Communication module 330 may be a computer hardware component that connects wand module 200 to a computing device 105 via a direct wireless connection and/or via a computer network (e.g., network 115). Communication module 330 may connect with one or more devices via the direct wireless connection by using, for example, Bluetooth and/or BLE protocols, WiFi protocols, Infrared Data Association (IrDA) protocols, ANT and/or ANT+ protocols, and the like. In some embodiments, communication module 330 may connect the wand module 200 with one or more devices (e.g., devices 101 and/or computing device 105) via network 115 in accordance with one or more wireless communications protocols and/or one or more cellular phone communications protocols. In such embodiments, communication module 330 may be configured to operate in accordance with the Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (WCDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) such as the Institute of Electrical and Electronics Engineers (IEEE) 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11ac, and/or IEEE 802.11n, voice over Internet Protocol (VoIP), Wi-MAX, Long Term Evolution (LTE), and/or any other “wireless” communication protocols. Communication module 330 may operate in conjunction with a wireless transmitter/receiver and/or transceiver (not shown) that is configured to operate in accordance with one or more wireless standards described above. The communication module 330 may also include one or more network interfaces, one or more virtual network interfaces configured to operate with spell module 300 and/or other like modules or applications.
First devices 215 may be physical hardware devices configured to provide feedback or another like indication as to whether a spell has been properly performed or not. As shown, the first device 215 may be one or more LEDs or other like illumination device. In various embodiments, the one or more first devices 215 may include one or more audio devices, one or more haptic feedback devices and/or one or more actuators, one or more heating elements, and the like. In some embodiments, the first devices 215 may include a display device and/or a projector.
I/O interface 307 may be a computer hardware component that provides communication between the wand module 200 and one or more other devices. The I/O interface 307 may include one or more user interfaces designed to enable user interaction with the wand module 200 and/or peripheral component interfaces designed to provide interaction between the computing device 105 and one or more peripheral components. User interfaces may include, but are not limited to a physical keyboard or keypad, a touchpad, a speaker, a microphone, infrared heart rate monitoring device, a fingerprint or handprint scanning device, an EEG device, haptic feedback devices including one or more actuators and/or one or more TENS devices, etc. Peripheral component interfaces may include, but are not limited to, a non-volatile memory port, a universal serial bus (USB) port, an audio jack, and a power supply interface. It should be noted that the I/O interface 307 may be an optional element, and thus, in some embodiments the I/O interface 307 may be omitted from the wand module 300.
Sensors 306 may include one or more sensing devices to determine position information (or alternatively “position data”), orientation information (or alternatively “orientation data”), environmental conditions, and/or like information related to the wand module 200. In some embodiments, the sensors 306 may include, but are not limited to, an accelerometer, gyroscope, gravimeter, magnetometer, proximity sensor, ambient light sensor, and a positioning unit, such as global positioning system (GPS) circuitry, and the like.
Battery 305 may be a device configured to provide electrical power to the wand module 200 using one or more electrochemical cells including nickel-cadmium (NiCd), nickel-zinc (NiZn), nickel metal hydride (NiMH), and lithium-ion (Li-ion) cells. In some embodiments battery 305 may comprise a supercapacitor device and/or an ultracapacitor device, while in other embodiments, the battery 305 may comprise a fuel cell device. The battery 305 may communicate battery information to the device interface module 315 when queried by the device interface module 315. The battery information may indicate whether the wand module 200 is connected to a power source, whether the connected power sources is wired or wireless, whether the connected power sources is an alternating current charger or a USB charger, a current voltage of the battery, a remaining battery capacity as an integer percentage of total capacity (with or without a fractional part), a battery capacity in microampere-hours, an average battery current in microamperes, an instantaneous battery current in microamperes, a remaining energy in nanowatt-hours, whether the battery is overheated, cold, dead, or has an unspecified failure, and the like. The device interface module 315 may provide the battery information to the spell module 300 and/or the wand communication module 330 to provide the battery information to the computing device 105 to determine the spell output intensity based on the amount of charge indicated by the battery information.
FIG. 3B illustrates the components of the computing devices 105, in accordance with various example embodiments. As shown, computing devices 105 may include processor 410, bus 420, network interface 430, input/output (I/O) interface 440, and memory 350. In some embodiments, computing devices 105 may include many more components than those shown in FIG. 3B, such as a display device, an input device (e.g., a physical keyboard, a touch screen, etc.), one or more image sensors, a transmitter/receiver (or alternatively, a transceiver), a mobile video card and/or graphics processing unit (GPU), and other like components. However, it is not necessary that all of these generally conventional components be shown in order to disclose the example embodiments.
Memory 450 may be a hardware device configured to store an operating system 460 and program code for one or more software components, such as spell determination module 465 and/or one or more applications 400 and 500. Memory 450 may be a computer readable storage medium that generally includes a random access memory (RAM), read only memory (ROM), a flash memory device, a solid state disk (SSD), a secure digital (SD) card, and/or other like storage media capable of storing and recording data. The program code and/or software components may also be loaded from a separate computer readable storage medium into memory 450 using a drive mechanism (not shown). Such separate computer readable storage medium may include a memory card, memory stick, removable flash drive, sim card, and/or other like computer readable storage medium (not shown). In some embodiments, software components may be loaded into memory 450 via network interface 430, rather than via a computer readable storage medium.
During operation, memory 450 may include operating system 460, spell determination module 465, which includes spell generation process 400, spell discovery process 500, and spell determination process 600. Operating system 460 may manage computer hardware and software resources and provide common services for computer programs. Operating system 460 may include one or more drivers, such as a display driver, camera driver, audio drivers, and/or any other like drivers that provide an interface to hardware devices thereby enabling operating system 460, spell determination module 465, spell generation process 400, spell discover process 500, and/or spell determination application 600 to access hardware functions without needing to know the details of the hardware itself. The operating system 460 may be a general purpose operating system or an operating system specifically written for and tailored to the computing device 105.
The spell determination module 464 may be a collection of software modules and/or program code (including the processes 400-600) that enables the computing devices 105 to define one or more spells with associated spell outputs, and determine when a spell has been performed using the wand 125. Spell determination module 465 may be a native application, a web application, or a hybrid application. In embodiments where the spell determination module 465 is a web or hybrid application, spell determination module 465 may be rendered in or otherwise executed using a web browser of the computing device 105. In various embodiments, a game operator may develop one or more other applications to interact with the spell determination module 465. The processes 400-600 may be a collection of software modules and/or program code that enables the computing device 105 to operate according to the various example embodiments as discussed with regard to FIGS. 4-6B.
Processor 410 may be configured to carry out instructions of a computer program by performing the basic arithmetical, logical, and input/output operations of the system. The processor 410 may include a single-core processor, a dual-core processor, a triple-core processor, a quad-core processor, and/or the like. The processor 410 may perform a variety of functions for the computing devices 105 and may process data by executing program code, one or more software modules, firmware, middleware, microcode, hardware description languages, and/or any other like set of instructions stored in the memory 450. The program code may be provided to processor 410 by memory 450 via bus 420, one or more drive mechanisms (not shown), and/or via network interface 430. In order to perform the variety of functions and data processing operations, the program code and/or software components may be executed by the processor 410. On execution by the processor 410, the processor 410 may cause computing devices 105 to perform the various operations and functions delineated by the program code/modules, and/or software components.
For example, in various embodiments, the computing devices 105 may include various modules configured to operate (through hardware and/or software) to define one or more spells with associated spell outputs, and determine when a spell has been performed using the wand 125. The various modules may include the spell determination module 465, which includes the processes 400-600 (described with regard to FIGS. 4-6B). The various modules may be loaded into memory 450 and executed by the processor 410. Once the various modules are loaded into memory 450 and executed by the processor 410, the processor 310 may be configured to perform the processes 400-600 as discussed with regard to FIGS. 4-6B. While specific modules are described herein, it should be recognized that, in various embodiments, various modules and/or processes may be combined, separated into separate modules and/or processes, and/or omitted. Additionally, in various embodiments, one or more modules and/or processes may be implemented on separate devices, in separate locations, or distributed, individually or in sets, across multiple processors, devices, locations, and/or in cloud-computing implementations.
Bus 420 may be configured to enable the communication and data transfer between the components of computing device 105. Bus 420 may comprise a high-speed serial bus, parallel bus, internal universal serial bus (USB), Front-Side-Bus (FSB), and/or other suitable communication technology for transferring data between components within computing device 105 and/or between computing device 105 and other like devices. In some embodiments, the computing device 105 may include an I/O bus such as a PCI bus, a PCI-Express (PCI-e) bus, a Small Computer System Interface (SCSI) bus, and the like.
Network interface 430 may be a computer hardware component that connects computing device 105 to a computer network (e.g., network 115). Network interface 430 may connect computing device 105 to a computer network via a wired or wireless connection. Network interface 430 may operate in conjunction with a wireless transmitter/receiver and/or transceiver (not shown) that is configured to operate in accordance with one or more wireless standards. The wireless transmitter/receiver and/or transceiver may be configured to operate in accordance with a wireless communications standard, such as the IEEE 802.11-2007 standard (802.11), the Bluetooth standard, and/or any other like wireless standards. The communications port may be configured to operate in accordance with a wired communications protocol, such as a serial communications protocol (e.g., the Universal Serial Bus (USB), FireWire, Serial Digital Interface (SDI), and/or other like serial communications protocols), a parallel communications protocol (e.g., IEEE 1284, Computer Automated Measurement And Control (CAMAC), and/or other like parallel communications protocols), and/or a network communications protocol (e.g., Ethernet, token ring, Fiber Distributed Data Interface (FDDI), and/or other like network communications protocols). The network interface 430 may also include one or more virtual network interfaces configured to operate with application 465 and/or other like applications.
I/O interface 440 may be a computer hardware component that provides communication between the computing device 105 and one or more other devices. The I/O interface 440 may include one or more user interfaces designed to enable user interaction with the computing device 105 and/or peripheral component interfaces designed to provide interaction between the computing device 105 and one or more peripheral components. User interfaces may include, but are not limited to a physical keyboard or keypad, a touchpad, a speaker, a microphone, etc. Peripheral component interfaces may include, but are not limited to, a non-volatile memory port, a universal serial bus (USB) port, an audio jack, and a power supply interface.
As discussed above, computing devices 105 may also include a transmitter and receiver or a transceiver (not shown). The transmitter may be any type of hardware device that generates or otherwise produces radio waves in order to communicate with one or more other devices. The transmitter may be coupled with an antenna (not shown) in order to transmit data to one or more other devices. The transmitter may be configured to receive digital data from one or more components of computing devices 105 via bus 420, and convert the received digital data into an analog signal for transmission over an air interface. The receiver may be any type of hardware device that can receive and convert a signal from a modulated radio wave into usable information, such as digital data. The receiver may be coupled with the antenna (not shown) in order to capture radio waves. The receiver may be configured to send digital data converted from a captured radio wave to one or more other components of mobile terminal 105 via bus 420. In embodiments where a transceiver (not shown) is included with computing devices 105, the transceiver may be a single component configured to provide the functionality of a transmitter and a receiver as discussed above.
FIG. 3C illustrates the components of wand module 200, in accordance with other various example embodiments. As shown, wand module 200 may include first devices 215, battery 305, sensors 306, I/O interface 307, processor 310, device interface module 315, bus 320, I/O bus 325, communication module 330, and memory 350. Furthermore, during operation, the wand module 200 of FIG. 3C includes the device interface module 315 and spell module 300, which includes the spell determination module 465, which includes the processes 400-600. In some embodiments, wand module 200 may include many more components than those shown in FIG. 3C. However, it is not necessary that all of these generally conventional components be shown in order to disclose the example embodiments.
FIG. 3C illustrates the internal components of wand module 200 that is capable of performing the various spell definition and spell determination processes as described above as being performed by the computing device 105 (see e.g., the description of FIGS. 1A-1E). Thus, the various components as described above with regard to FIGS. 3A-3B may be the same or similar to those shown in FIG. 3C.
FIG. 4 illustrates a process 400 for spell generation, in accordance with various embodiments. In various embodiments, the process 400 may be implemented as application that may be executed by a processor of computing device 105 and/or wand module 200. For illustrative purposes, the operations of process 400 will be described as being performed by the computing device 105 (e.g., the example embodiments shown and discussed with regard to FIGS. 1A, 1C, and 3A-3B) and/or the wand module 200 (e.g., the example embodiments shown and discussed with regard to FIGS. 1B and 3C), however, it should be noted that other similar devices may operate the process 400 as described below. While particular examples and orders of operations are illustrated in FIG. 4, in various embodiments, these operations may be re-ordered, broken into additional operations, combined, and/or omitted altogether.
Referring to FIG. 4, at operation 1405, the computing device 105 (or the wand module 200) may be configured with the definition of one or more gestures to be performed using the wand 125. The one or more gestures may include one or more bodily movements, one or more physical inputs (e.g., button presses, biometric data, etc.), one or more voice commands, completion of one or more tasks, and the like. In various embodiments, defining the one or more gestures may also include defining a sequence in which the one or more gestures are required to be performed.
At operation 1410, the computing device 105 (or the wand module 200) may be configured with the definition of a spell output and (optionally) another spell output to be associated with the defined one or more gestures. The defined spell output may include one or more first instructions for activating one or more first devices and/or one or more second instructions for activating one or more second devices. The defined spell output may be used to indicate to a user of the wand 125 that the one or more defined gestures have been performed properly after the spell has been created. The other spell output may include one or more other first instructions for activating one or more first devices and/or one or more other second instructions for activating one or more second devices, wherein the one or more first instructions are different than the one or more other first instructions and/or the one or more second instructions are different than the one or more other second instructions. The other spell output may be used to indicate to a user of the wand 125 that the one or more defined gestures have not been performed properly and/or that a degree of similarity between the defined gestures and the performed gestures is below a threshold. Furthermore, in some embodiments, the computing device 105 (or the wand module 200) may be configured with the definition of third instructions, which are to be used for updating, altering, and/or adjusting a user profile based on a game associated with the defined spell output. Such third instructions may indicate various game play parameters/points to be adjusted based on proper or improper performance of the one or more defined gestures.
At operation 1415, the computing device 105 (or the wand module 200) may be configured with the definition of a desired time period for performing the one or more gestures. The desired time period may be a time in which the one or more defined gestures are required to be performed (within a certain margin of error) and/or a time period in which each of the one or more gestures are to be performed. For example, the defined period of time may require that the one or more gestures be complete within one minute, and/or that each gesture of the one or more gestures must be performed within 200 milliseconds of each other.
At operation 1420, the computing device 105 (or the wand module 200) may be configured with the definition of a ROE 130 for the spell output to be applied. Defining the ROE 130 may include defining a size and/or shape of the ROE 130. At operation 1425, the computing device 105 (or the wand module 200) may be configured with the definition of a spell output intensity based on a desired position within the ROE 130. In various embodiments, proximity of the wand 125 to an associated object or device, such as an IoT device, may be required in order for the spell to have an effect. For example, an “open door” spell may have no effect unless the wand 125 is within a specified distance a door (e.g., 5 feet) due to limitations of the hardware devices of the wand 125 (e.g., transmission power, etc.) or due to limitations of the gaming environment 100 (e.g., electromagnetic interference, etc.). Therefore, the ROE 130 may be defined for the spell output in order for the defined spell output to have the desired effect. In some embodiments, the spell output intensity may be used to define requirements for the spell to have an effect. For example, the “open door” spell may have an effect when the wand 125 is within a specified distance of the door (e.g., 5 feet), but for certain game play design choices, the game operator or other entity may require that the wand 125 be at a desired distance from the door (e.g., 3 feet) in order to obtain the desired effect. By way of another example, a spell for a game may be defined to have a desired virtual property/points effect on another player when the spell is performed by the wand 125A and another wand 125B is located at a desired position (e.g., spatial coordinates (X,Y,Z)) within the ROE 130. In this case, the spell may have an attenuated or otherwise decreased virtual property/points effect based on how close or far the other wand 125B is from the desired position within the ROE 130. Furthermore, in some embodiments, defining the ROE 130 may also include defining a desired alteration to the spell output and/or spell output intensity when one or more auxiliary devices are proximate to the wand 125, which may be done by associating one or more auxiliary device identifiers or auxiliary device types with the spell output. In such embodiments, an increment amount for incrementing an auxiliary device counter or a decrement amount for decrementing an auxiliary device counter may also be defined.
In some embodiments, the ROE 130 may be used to indicate an amount of game play properties/points to be used and/or applied against other users, etc. In such embodiments, defining the ROE 130 may include defining a desired distance and/or angle relative to the wand 125 in which to apply the defined spell output. In various embodiments, different spell intensities may be defined to correspond with various spatial coordinates, such as Cartesian coordinates, geographic coordinates (e.g., latitude and longitude), GPS coordinates, and/or other like points within the ROE 130. For example, the ROE 130 of wand 125 for a spell may be defined as a cone having a height of 5 feet, wherein a maximum spell intensity may be applied to devices 101 and/or other wands 125 that are within 3 feet from the wand 125. In such embodiments, a reduced or attenuated spell intensity may be defined for devices 101 and/or other wands 125 that are greater than 3 feet from the wand 125. In some embodiments, an attenuation factor or attenuation algorithm may be used to calculate how much the spell output intensity is to be reduced or attenuated for devices 101 and/or other wands 125 that are greater than defined distance from the wand 125 (e.g., greater than 3 feet in the example). It should be noted that, although the computing device 105 (or the wand module 200) may define a ROE 130 for the spell output, in various embodiments, the defined ROE 130 may be adjusted based on a user profile and/or an auxiliary device identifier. Accordingly, in various embodiments, at operations 1410 and 1420-1430, the computing device 105 (or the wand module 200) may define one or more ROE adjustment factors that may be used for adjusting the ROE 130 and/or the spell output intensity.
At operation 1430, the computing device 105 (or the wand module 200) may generate a defined spell sequence based on the defined one or more gestures. In various embodiments, generating the defined spell sequence may include converting the one or more defined gestures into a markup language, a hypertext language, a text file, firmware, middleware, microcode, hardware description languages, or any combination thereof that may be executed or otherwise interpreted by the computing device 105 (or the wand module 200).
At operation 1435, the computing device 105 (or the wand module 200) may provide the generated spell sequence to the wand 125 for confirmation of the spell sequence. At operation 1440, the computing device 105 (or the wand module 200) may determine whether the user of the wand 125 performed the defined one or more gestures properly or as defined by the generated spell sequence. If the computing device 105 (or the wand module 200) determines at operation 1440 that the user did perform the defined one or more gestures properly, then the computing device 105 proceeds to operation 1445 to store the generated spell sequence in association with the defined spell output. In some embodiments, when the user performs the defined one or more gestures properly, the computing device 105 (or the wand module 200) may issue one or more first instructions to activate one or more first devices and/or issue one or more second instructions to activate one or more second devices. These first instructions and/or second instructions may be the same as the first instructions and/or second instructions delineated by the defined spell output. In some embodiments, the first instructions and/or second instructions issued in response to proper performance of the one or more defined gestures may be a predefined set of instructions used for confirming the performance of a newly defined spell. Such first instructions and/or second instructions may be based on one or more game design choices.
If the computing device 105 (or the wand module 200) determines at operation 1440 that the user did not perform the defined one or more gestures properly, then the computing device 105 (or the wand module 200) proceeds back to operation 1435 to provide the generated spell sequence to the wand 125. In some embodiments, if the computing device 105 (or the wand module 200) determines that the user did not perform the defined one or more gestures properly, prior to proceeding back to operation 1435, the computing device 105 (or the wand module 200) may issue one or more first instructions and/or second instructions which indicate that the user did not perform the defined one or more gestures properly. Such first instructions and/or second instructions may be based on one or more game design choices. In some embodiments, the first instructions and/or second instructions issued in response to improper performance of the one or more defined gestures may be the same or similar to the other first instructions and/or the other second instructions of the other spell output defined at operation 1425.
At operation 1445, the computing device 105 (or the wand module 200) may store the generated spell sequence as a defined spell sequence in association with the defined spell output, defined other spell output, defined period of time, defined region of effect, and/or the defined spell output intensity. The aforementioned spell attributes may be stored in one or more databases associated with the computing device 105, the wand 125, and/or the accounting server 120 according to known methods.
At operation 1450, the computing device 105 (or the wand module 200) may provide an indicator indicating the availability of the defined spell, which provides the defined spell output at the defined spell output intensity when the one or more gestures are performed using the wand 125. In some embodiments, the indicator may be in the form of an electronic notification, such as popup window, a push notification, an email, a text message, and/or any other like indicators. In some embodiments, the indicator may be the activation of one or more first devices and/or one or more second devices that are the same or similar as discussed with regard to operations 1435-1445. It should be noted that operation 1450 is optional and may be omitted in some embodiments. Moreover, in some embodiments, the indicator may be provided to another wand module 200 and/or another computing device 105. In such embodiments, the indicator may not be activated until the created spell is discovered by the user of the other wand module 200 and/or the other computing device 105 according to the example embodiment described with regard to process 500 of FIG. 5.
Furthermore, it should be noted that in embodiments where the process 400 is performed by the computing device 105, the various operations described above may be defined using a user interface displayed on a display device associated with the computing device 105. The user interface may include one or more graphical control elements (e.g., radio boxes, text boxes/fields, etc.) within a webpage. In such embodiments, a user may be able to create new spells by entering the various gestures, spell outputs, spell output intensities, etc., and/or by describing the various features of the spell. In other embodiments where the process 400 is performed by the computing device 105, the various operations described above may be defined utilizing the wand 125 in combination with the computing device 105. In such embodiments, the one or more gestures to be performed are defined by performing the one or more gestures using the wand, and the spell output to be associated with the one or more gestures is defined by a voice command, activating the one or more first devices, and/or activating the one or more second devices. The voice commands, first device activations, and/or second device activations may be confirmed using a user interface displayed by the computing device 105. In other embodiments where the process 400 is performed by only using the wand 125, the various operations described above may be defined utilizing the wand 125 wherein the one or more gestures to be performed are defined by performing the one or more gestures using the wand, and the spell output to be associated with the one or more gestures is defined by at least one of a voice command, activating the one or more first devices, and activating the one or more second devices.
In various embodiments, once a spell has been created, the spell can be transferred to one or more desired users, or may be dynamically assigned to one or more users by the accounting server 120, the spell determination module 465 of the computing device 105 and/or the wand module 200 based on a game design, player status, time of day, wand location, presence of other players, and the like. In some embodiments, the assignment and/or transfer of one or more spells may be accomplished by obtaining an image code that may be printed on paper, cardboard, and the like, or displayed on a display device. In such embodiments, the image code may be obtained by a scanning a bar code, a quick response (QR) code, and/or an image, using an image sensor of the computing device 105. In some embodiments, the image code itself may comprise an encoded spell or spell sequence, while in other embodiments, the image code may comprise a webpage address or other like identifier, which may direct the computing device 105 to a location where the spell or spell sequence may be obtained. It should be noted that in some embodiments, a user may not be able to actually cast the newly created spell, as the newly created spell may require game play criteria to which the user does not have access, such as the completion of task, acquiring one or more auxiliary devices, and/or require game play properties/points that the user has not yet attained/accumulated. Furthermore, in some embodiments, process 400 may include an optional “testing phase”, which may allow the user of the wand 125 to practice performing various gesture combinations prior to creating the spell.
FIG. 5 illustrates a process 500 for spell discovery, in accordance with various embodiments. In various embodiments, the process 500 may be implemented as application that may be executed by a processor of computing device 105 and/or wand module 200. For illustrative purposes, the operations of process 500 will be described as being performed by the computing device 105 (e.g., the example embodiments shown and discussed with regard to FIGS. 1A, 1C, and 3A-3B) and/or the wand module 200 (e.g., the example embodiments shown and discussed with regard to FIGS. 1B and 3C), however, it should be noted that other similar devices may operate the process 500 as described below. While particular examples and orders of operations are illustrated in FIG. 5, in various embodiments, these operations may be re-ordered, broken into additional operations, combined, and/or omitted altogether.
Referring to FIG. 5, at operation 1505, the computing device 105 (or the wand module 200) may receive a spell associated with a defined spell sequence and a defined spell output. In embodiments where the wand 125 is coupled with the computing device 105 (e.g., the example embodiments shown and discussed with regard to FIGS. 1A, 1C, and 3A-3B), the computing device 105 may obtain and store the defined spell from a game operator as described herein. In embodiments where the wand 125 is not coupled with the computing device 105 (e.g., e.g., the example embodiments shown and discussed with regard to FIGS. 1B and 3C), the wand module 200 of the wand may obtain and store the defined spell from a game operator.
At operation 1510, the computing device 105 may capture or otherwise determine one or more gestures performed using the wand 125. At operation 1515, the computing device 105 (or the wand module 200) determines whether the one or more performed gestures are equal to, or substantially similar to, the one or more defined gestures. In embodiments where the wand 125 is coupled with the computing device 105 (e.g., as shown in FIGS. 1A, 1C, and 3A-3B), the wand module 200 of the wand 125 may capture the one or more performed gestures utilizing the one or more sensors 306 and the spell module 300, and communicate a spell sequence based on the one or more performed gestures to the computing device 105 for spell determination, as described herein. In embodiments where the wand 125 is not coupled with the computing device 105 (e.g., as shown in FIGS. 1B and 3C), the wand module 200 of the wand 125 may capture the one or more performed gestures utilizing the one or more sensors 306, and the spell module 300 may perform the spell determination as described herein.
If at operation 1515, the computing device 105 (or the wand module 200) determines that the one or more performed gestures are equal to, or substantially similar to, the one or more defined gestures (within a certain margin of error), the computing device 105 (or the wand module 200) may proceed to operation 1520 to execute the defined spell output. If at operation 1515, the computing device 105 (or the wand module 200) determines that the one or more performed gestures are not equal to, or not substantially similar to, the one or more defined gestures (within a certain margin of error), the computing device 105 (or the wand module 200) may proceed back to operation 1510 to determine/capture one or more performed gestures using the wand 125.
At operation 1520, the computing device 105 (or the wand module 200) may execute the defined spell output by issuing one or more first instructions to activate one or more first devices and/or issuing one or more second instructions to activate one or more second devices as discussed previously. At operation 1525, the computing device 105 (or the wand module 200) may store the defined spell in association with a user profile of the user, or instruct the accounting server 120 to store the defined spell in association with a user profile of the user. It should be noted that operation 1525 is optional, and thus, in various embodiments operation 1525 may be omitted from process 500. The decision to include operation 1525 in process 500 may be based on one or more design choices and/or game implementations.
It should be noted that the process 500 may be utilized for spell discovery. In various embodiments, spells may be provided to, or otherwise associated with a user, based on gaming parameters, such as a user playing a specific game that may be in a specific gaming environment 100 and/or by completing specific game-related tasks. Additionally, in various embodiments, one or more spells may be “gifted” to a user by a game operator or another user, while in some embodiments, one or more spells may be randomly assigned to a user, wherein the process 500 may be utilized to discover the gifted or randomly assigned spells.
FIGS. 6A-6B illustrate a process 600 for spell casting and/or spell resolution, in accordance with various embodiments. In various embodiments, the process 600 may be implemented as application that may be operated by computing device 105 and/or wand module 200. For illustrative purposes, the operations of process 600 will be described as being performed by the computing device 105 (e.g., the example embodiments shown and discussed with regard to FIGS. 1A, 1C, and 3A-3B) and/or the wand module 200 (e.g., the example embodiments shown and discussed with regard to FIGS. 1B and 3C), however, it should be noted that other similar devices may operate the process 600 as described below. While particular examples and orders of operations are illustrated in FIG. 6, in various embodiments, these operations may be re-ordered, broken into additional operations, combined, and/or omitted altogether.
Referring to FIG. 6A, at operation 1605, the computing device 105 (or the wand module 200) may obtain or otherwise determine a spell sequence indicative of one or more performed gestures according the various methods described herein. At operation 1610, the computing device 105 (or the wand module 200) may obtain or otherwise determine a plurality of spells wherein each of the plurality of spells includes a defined spell sequence and a defined spell output. The plurality of spells may be provided by a game operator (e.g., accounting server 120) or by another like entity, or in various embodiments, the plurality of spells may be stored in a memory device and/or cloud storage space associated with the user of wand 125. In some embodiments, the computing device 105 (or wand module 200) may query a database associated with a game operator to obtain the plurality of spells. In such embodiments, the computing device 105 (or wand module 200) may query the database using a user profile (or information contained within the user profile), which may indicate various game play parameters, subscription information, and/or other like user contexts, and the database may provide one or more spells to the computing device 105 (or wand module 200) based on the provided information.
At operation 1615, the computing device 105 (or the wand module 200) may determine whether the spell sequence matches any of the defined spell sequences of the plurality of spell sequences. If at operation 1615, the computing device 105 (or the wand module 200) determines that the spell sequence matches at least one of the defined spell sequences of the plurality of spell sequences, then the computing device 105 (or the wand module 200) may proceed to operation 1625 to determine a ROE 130 and a spell output intensity of the matching spell and/or associated with a user of the wand. If at operation 1615, the computing device 105 (or the wand module 200) determines that the spell sequence does not match at least one of the defined spell sequences of the plurality of spell sequences, then the computing device 105 (or the wand module 200) may proceed to operation 1620 to determine whether a degree of similarity is greater than or equal to a threshold.
At operation 1620, the computing device 105 (or the wand 125) may determine whether a degree of similarity is greater than or equal to a threshold. The degree of similarity may indicate a number and/or order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence. For example, if a spell sequence requires a user to perform desired number of gestures in a specific sequence, and the user performs one or fewer (or one or more) of the defined gestures, the degree of similarity may be represented as a character or integer indicating the amount of the gestures that were performed. In some embodiments, the degree of similarity may be represented as a ratio of the number of performed gestures to the number of defined gestures. In some embodiments, the degree of similarity may indicate whether one or more gestures were performed out of order. Furthermore, it should be noted that the degree of similarity may be used to provide first instructions and/or second instructions, which may indicate a missing gesture in the spell, insufficient authorization to perform the spell, the performance of the spell was done at an unauthorized location and/or spatial coordinates, and the like.
If at operation 1620, the computing device 105 (or the wand module 200) determines that the degree of similarity is greater than or equal to a threshold, then the computing device 105 (or the wand module 200) may proceed to operation 625 to determine the ROE 130 and a spell output intensity of the matching spell and/or associated with a user of the wand. If at operation 1620, the computing device 105 (or the wand module 200) determines that the degree of similarity is less than the threshold, then the computing device 105 (or the wand module 200) may proceed back to operation 1605 to obtain a spell sequence indicative of one or more preformed gestures. In various embodiments, the threshold may be a desired or predetermined amount set according to one or more game design choices.
At operation 1625, the computing device 105 (or the wand module 200) may determine a ROE 130 and a spell output intensity of the matching spell and/or associated with a user of the wand. As described herein, a spell output may be associated with a defined ROE, and in some embodiments, the ROE 130 may be based on a user profile associated with a user of the wand 125 and/or various game play parameters. Thus, at operation 1625, the computing device 105 (or the wand module 200) may determine the ROE 130 based on the defined ROE and the information contained in the user profile. The ROE 130 may be set according to various calculations and/or game play parameters. For example, in some embodiments, the ROE 130 defined by the user profile may be weighted or more heavily favored than the defined spell output ROE 130, or vice versa. Additionally, in some embodiments, at operation 1625, the ROE 130 may be increased or decreased according to various device parameters (e.g., battery usage, memory fragmentation, processor speeds, and the like) as described herein.
At operation 1630, the computing device 105 (or the wand module 200) may determine whether one or more auxiliary devices are proximate to the wand 125. The computing device 105 (or the wand module 200) may determine whether one or more auxiliary devices are proximate to the wand 125 according to the position determination and/or triangulation methods discussed herein. If at operation 1630, the computing device 105 (or the wand module 200) determines that one or more auxiliary devices are proximate to the wand 125, the computing device 105 (or the wand module 200) may proceed to operation 1635 to adjust the ROE 130 based on the auxiliary device identifier(s) of the one or more auxiliary devices that are proximate to the wand 125. If at operation 1630, the computing device 105 (or the wand module 200) determines that one or more auxiliary devices are not proximate to the wand 125, the computing device 105 (or the wand module 200) may proceed to operation 1640 to determine whether one or more second devices 101 are within the ROE 130.
At operation 1635, the computing device 105 (or the wand module 200) may adjust the ROE 130 based on the auxiliary device identifier(s) of the one or more auxiliary devices that are proximate to the wand 125. As discussed previously, data packets included a signal that is broadcast by the auxiliary devices may include an identifier or other like identifying information, such as a device name (e.g., serial number), device type, position information, and any information that may be indicative of a service and/or a spell alteration provided by the auxiliary device. Accordingly, the computing device 105 (or the wand module 200) may be configured to extract the identifying information from the data packets according to known methods and alter the ROE 130, spell output intensity, etc. according to the extracted information.
At operation 1640, the computing device 105 (or the wand module 200) may determine whether the spell output of the matching spell indicates to activate the one or more second devices 101. If at operation 1640, the computing device 105 (or the wand module 200) determines that the spell output of the matching spell indicates to activate the one or more second devices 101, then the computing device 105 (or the wand module 200) may proceed to operation 1645 (as shown in FIG. 6B) to determine whether the one or more second devices 101 indicated by the spell output are within the ROE 130. If at operation 1640, the computing device 105 (or the wand module 200) determines that the spell output of the matching spell does not indicate to activate the one or more second devices 101, then the computing device 105 (or the wand module 200) may proceed to operation 1660 (as shown in FIG. 6B) to determine whether the spell output indicates to activate one or more first devices 215.
Referring to FIG. 6B, at operation 1645, the computing device 105 (or the wand module 200) may determine whether one or more second devices 101 are within the ROE 130. The computing device 105 (or the wand module 200) may determine whether the one or more second devices 101 (or another wand 125) are within the ROE 130 according to the various example embodiments discussed previously. If at operation 1645, the computing device 105 (or the wand module 200) determines that one or more second devices 101 (or another wand 125) are within the ROE 130, the computing device 105 (or the wand module 200) may proceed to operation 1650 to determine a spell output target device from among the one or more second devices 101 within the ROE 130. If at operation 1645, the computing device 105 (or the wand module 200) determines that one or more second devices 101 (or another wand 125) are not within the ROE 130, the computing device 105 (or the wand module 200) may proceed to operation 1660 to determine whether the spell output of the matching spell indicates to activate the one or more first devices 215 of the wand 125 and/or the wand module 200.
At operation 1650, the computing device 105 (or the wand module 200) may determine a spell output target device from among the one or more second devices within the ROE 130 according to the position determination methods and/or triangulation methods described herein. At operation 1651, the computing device 105 (or the wand module 200) may cast the matching spell by issuing one or more second instructions to the one or more second devices indicated by the spell output of the matching spell. At operation 1660, the computing device 105 (or the wand module 200) may determine whether the spell output indicates to activate one or more first devices 215.
If at operation 1660, the computing device 105 (or the wand module 200) determines that the spell output of the matching spell indicates to activate one or more first devices 215, the computing device 105 (or the wand module 200) may proceed to operation 1665 to cast the matching spell by issuing one or more first instructions to the one or more first devices indicated by the spell output of the matching spell. If at operation 1660, the computing device 105 (or the wand module 200) determines that the spell output of the matching spell does not indicate to activate one or more first devices 215, the computing device 105 (or the wand module 200) may return to operation 1670 to instruct the accounting server 120 to adjust a user profile of the user of the wand 125 to reflect the casting of the spell.
At operation 1665, the computing device 105 (or the wand module 200) may cast the matching spell by issuing one or more first instructions to the one or more first devices 215 indicated by the spell output of the matching spell. At operation 1670, the computing device 105 (or the wand module 200) may instruct the accounting server 120 to adjust a user profile of the user of the wand 125 to reflect the casting of the spell, such that the user profile reflects the issuance of the first instructions and/or the second instructions. In various embodiments, the accounting server 120 may reduce/increase a user's game play points/property according to the cast spell. In some embodiments, the computing device 105 (or the wand module 200) may adjust the user profile and provide the updated/adjust user profile to the accounting server 120. After the computing device 105 (or the wand module 200) performs operation 1670, the computing device 105 (or the wand module 200) may return back to operation 1605 to obtain or otherwise determine a spell sequence indicative of one or more performed gestures.
As described herein, the example embodiments provide apparatuses, systems, and methods for providing immersive interactive gaming experiences using a handheld user interface device. Example embodiments provide that the handheld user interface devices may utilize already existing/deployed output devices and/or already existing gaming platforms to provide gaming feedback to a user. Thus, the described embodiments are not tied to a specific proprietary platform and/or a specific physical/virtual environment.
Some non-limiting Examples are provided below.
Example 1 may include a wand comprising: at least one processor; one or more sensors, communicatively coupled with the at least one processor, to detect one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures; a device interface module to operate on the at least one processor to obtain, from the one or more sensors, the sensor data representative of the one or more gestures; a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence; and wand communication module, communicatively coupled with the at least one processor, to transmit the spell sequence to a computing device, and receive, from the computing device, a spell output based on the spell sequence and a wand position.
Example 2 may include the wand of example 1, and/or any of the examples described herein, wherein the spell module is to transmit a first instruction to the device interface module to activate one or more first devices according to the spell output or the computing device is to transmit a second instruction to one or more second devices to activate the one or more second devices.
Example 3 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, or a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 4 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell module is to record the sensor data representative of the one or more gestures during a period of time, and convert the sensor data representative of the one or more gestures performed during the period of time into the spell sequence, and the sensor data representative of the one or more gestures performed outside of the period of time are excluded from the spell sequence or included in another spell sequence.
Example 5 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the computing device includes a spell determination module to operate on at least one processor of the computing device to determine a spell from a plurality of spells based on the spell sequence wherein each of the plurality of spells is associated with a defined spell sequence, determine a spell output associated with the determined spell, and provide a message that indicates the determined spell output.
Example 6 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the spell, the spell determination module is to compare the spell sequence with the defined spell sequence for each of the plurality of spells, determine a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence, and select the spell wherein the spell has a greatest degree of similarity among the plurality of spells.
Example 7 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell determination module is to determine the wand position relative to the one or more second devices, determine a spell output target device based on the wand position wherein the spell output target device is at least one of the one or more second devices to which the wand is directed by the user, and determine a spell output intensity based on a distance between the wand position and a position of the spell output target device wherein the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 8 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to obtain an identifier for each of the one or more second devices, wherein each identifier indicates a device type and a device position of a corresponding one of the one or more second devices.
Example 9 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to determine a region of effect for the wand based on a user profile associated with the user wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area, and the spell determination module is to determine whether the one or more second devices are within the region of effect based on the device position indicated by the obtained identifier.
Example 10 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 11 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell output intensity is also based on the degree of similarity such that an increase in the degree of similarity is to provide an increase in the spell output intensity and a decrease in the degree of similarity is to provide a decrease in the spell output intensity.
Example 12 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the device interface module is to determine an amount of charge in a battery of the wand, and the wand communication module is to provide the amount of charge to the computing device with the spell sequence, and the computing device is to determine the spell output intensity based on the amount of charge.
Example 13 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the spell output indicates to activate the one or more first devices, the first instruction is to activate the one or more first devices at the spell output intensity, to perform, based on the degree of similarity, one of a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell; and when the spell output indicates to activate the spell output target device, the second instruction is to activate the one or more second devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell.
Example 14 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more first devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and the one or more second devices include at least one of one or more other computing devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.
Example 15 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more first devices include the one or more audio devices, the one or more audio devices include a Bluetooth headset.
Example 16 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices include the one or more display devices, the one or more display devices include an augmented reality headset capable of displaying the spell output.
Example 17 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the first instruction is to instruct the one or more first devices to output a desired audio output when the one or more first devices include the one or more audio devices; emit a desired light sequence when the one or more first devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion when the one or more first devices include the one or more haptic feedback devices or the one or more actuators; and heat the wand to a desired temperature when the one or more first devices include the one or more heating elements.
Example 18 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the second instruction is to instruct the one or more second devices to execute desired program code when the one or more second devices include the one or more other computing devices; access one or more services associated with the one or more IoT devices when the one or more second devices include the one or more IoT devices; output a desired audio output when the one or more second devices include the one or more audio devices; output a desired video output when the one or more second devices include the one or more display devices; and record the spell output when the one or more second devices include the one or more other wands.
Example 19 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the computing device is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and the spell determination module is to alter the spell output and determine the spell output intensity based on the auxiliary device identifier.
Example 20 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to obtain the auxiliary device identifier the computing device is to detect the one or more auxiliary devices by way of a scan of a region surrounding the wand for an auxiliary device signal that is broadcast by the one or more auxiliary devices wherein the auxiliary device signal includes the auxiliary device identifier.
Example 21 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the computing device is to detect the at least one other wand, and when the computing device detects the at least one other wand, the computing device is to obtain a wand signal from the at least one other wand wherein the wand signal indicates another spell output of the at least one other wand, wherein the other spell output indicates an alteration to a user profile of a user operating the wand.
Example 22 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more sensors include an accelerometer, a geomagnetic sensor, a gyroscope, a microphone, and a biometric sensor. The biometric sensor includes at least one of an infrared heart rate monitoring device, a fingerprint or handprint scanning device, an eye scanning device, an electromyography (EMG) device, and an electroencephalograph (EEG) device.
Example 23 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include an input of the biometric sensor such that the spell sequence is unique to the user, and one or more other gestures performed by another user using the wand are unique to the other user.
Example 24 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the accelerometer, the geomagnetic sensor, and the gyroscope are to provide spatial coordinates of the wand and the one or more gestures include a change in the spatial coordinates of the wand.
Example 25 may include a wand comprising: at least one processor; one or more sensors, communicatively coupled with the at least one processor, to detect one or more one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures; a device interface module to operate on the at least one processor to obtain, from one or more sensors, the sensor data representative of the one or more gestures; a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence, wherein the spell module includes a spell determination module to determine a spell from a plurality of spells based on the spell sequence wherein each of the plurality of spells is associated with a defined spell sequence, determine a spell output associated with the determined spell and based on a wand position, and provide the spell output by way of at least one of a first instruction to the device interface module to activate one or more first devices and a second instruction to a wand communication module to activate one or more second devices; and the wand communication module, communicatively coupled with the at least one processor, to transmit the second instruction to the one or more second devices, and transmit the determined spell to an accounting server to cause the accounting server to alter a user profile associated with the user of the wand based on the determined spell.
Example 26 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, or a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 27 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell module is to record the sensor data representative of the one or more gestures during a period of time, and convert the sensor data representative of the one or more gestures performed during the period of time into the spell sequence, and the sensor data representative of the one or more gestures performed outside of the period of time are excluded from the spell sequence or included in another spell sequence.
Example 28 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the spell, the spell determination module is to compare the spell sequence with the defined spell sequence for each of the plurality of spells, determine a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence, and select the spell wherein the spell has a greatest degree of similarity among the plurality of spells.
Example 29 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell determination module is to determine the wand position relative to the one or more second devices, determine a spell output target device based on the wand position wherein the spell output target device is at least one of the one or more second devices to which the wand is directed by the user, and determine a spell output intensity based on a distance between the wand position and a position of the spell output target device wherein the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 30 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to obtain an identifier for each of the one or more second devices, wherein each identifier indicates a device type and a device position of a corresponding one of the one or more second devices.
Example 31 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to determine a region of effect for the wand based on a user profile associated with the user wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area, and the spell determination module is to determine whether the one or more second devices are within the region of effect based on the device position indicated by the obtained identifier.
Example 32 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 33 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the spell output intensity is also based on the degree of similarity such that an increase in the degree of similarity is to provide an increase in the spell output intensity and a decrease in the degree of similarity is to provide a decrease in the spell output intensity.
Example 34 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the device interface module is to determine an amount of charge in a battery of the wand, and spell determination module is to determine the spell output intensity based on the amount of charge.
Example 35 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the wand communication module is to provide, to the accounting server, the determined spell, the spell output target device, and the spell output intensity, wherein the accounting server is to alter a user profile associated with the user based on the determined spell, the spell output target device, and the spell output intensity, and wherein the accounting server is to alter another user profile associated with another user based on the determined spell and the spell output intensity when the spell output target device is another wand.
Example 36 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the spell output indicates to activate the one or more first devices, the first instruction is to activate the one or more first devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell; and when the spell output indicates to activate the spell output target device, the second instruction is to activate the one or more second devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell.
Example 37 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more first devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and the one or more second devices include at least one of one or more computing devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.
Example 38 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more first devices include the one or more audio devices, the one or more audio devices include a Bluetooth headset.
Example 39 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices include the one or more display devices, the one or more display devices include an augmented reality headset capable of displaying the spell output.
Example 40 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the first instruction is to instruct the one or more first devices to output a desired audio output when the one or more first devices include the one or more audio devices; emit a desired light sequence when the one or more first devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion when the one or more first devices include the one or more haptic feedback devices or the one or more actuators; and heat the wand to a desired temperature when the one or more first devices include the one or more heating elements.
Example 41 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the wand communications module is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and provide the auxiliary device identifier to the spell determination module with the spell sequence, and the spell determination module is to determine the spell output and the spell output intensity based on the auxiliary device identifier.
Example 42 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the second instruction is to instruct the one or more second devices to execute desired program code when the one or more second devices include the one or more other computing devices; access one or more services associated with the one or more IoT devices when the one or more second devices include the one or more IoT devices; output a desired audio output when the one or more second devices include the one or more audio devices; output a desired video output when the one or more second devices include the one or more display devices; and record the spell output when the one or more second devices include the one or more other wands.
Example 43 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the wand communication module is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and the spell determination module is to alter the spell output and determine the spell output intensity based on the auxiliary device identifier.
Example 44 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein to obtain the auxiliary device identifier the wand communication module is to detect the one or more auxiliary devices by way of a scan of a region surrounding the wand for an auxiliary device signal that is broadcast by the one or more auxiliary devices wherein the auxiliary device signal includes the auxiliary device identifier.
Example 45 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the wand communication module is to detect the at least one other wand, and when the wand communication module detects the at least one other wand, the computing device is to obtain a wand signal from the at least one other wand wherein the wand signal indicates another spell output of the at least one other wand, wherein the other spell output indicates an alteration to a user profile of a user operating the wand.
Example 46 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more sensors include an accelerometer, a geomagnetic sensor, a gyroscope, a microphone, and a biometric sensor, wherein the biometric sensor includes at least one of an infrared heart rate monitoring device, a fingerprint or handprint scanning device, an eye scanning device, an electromyography (EMG) device, and an electroencephalograph (EEG) device.
Example 47 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include an input of the biometric sensor such that the spell sequence is unique to the user, and one or more other gestures performed by another user using the wand are unique to the other user.
Example 48 may include the wand of any of the preceding examples, and/or any of the examples described herein, wherein the accelerometer, the geomagnetic sensor, and the gyroscope are to provide spatial coordinates of the wand and the one or more gestures include a change in the spatial coordinates of the wand.
Example 49 may include a computer-implemented method for creating a spell to be performed using a wand, the method comprising: defining, by a computing device associated with the wand, one or more gestures to be performed, wherein the one or more gestures are movements performed by the user using the wand; defining, by the computing device, a spell output to be associated with the one or more gestures and a wand position wherein the spell output indicates at least one of a first instruction for activating one or more first devices and a second instruction for activating one or more second devices; generating, by the computing device, a defined spell sequence based on the defined one or more gestures; providing, by the computing device, the defined spell sequence to the wand, wherein the wand indicates to the user to perform the one or more gestures delineated by the defined spell sequence; receiving, by the computing device, a first indicator indicating that the user performed the one or more gestures delineated by the defined spell sequence; storing, by the computing device, the defined spell sequence in association with the defined spell output in response to the receiving; and providing, by the computing device to the wand, a second indicator indicating an availability of the spell that provides the defined spell output when the one or more gestures are performed.
Example 50 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: generating a third instruction based on the defined spell output wherein the third instruction instructs an accounting server to alter a user profile associated with the user according to the defined spell output.
Example 50 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, or a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 51 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: defining a period of time during which the one or more gestures are to be performed in order to obtain the spell output.
Example 52 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: defining a period of time during which the one or more gestures are to be performed in order to obtain the spell output.
Example 53 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: defining a region of effect for the defined spell output wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area wherein a spell output intensity is based on a position of the one or more second devices within the region of effect wherein the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 54 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: defining a desired spell output intensity for the spell output based on a desired position within the region of effect such that the desired spell output intensity is applied to the one or more second devices having a position that is equal to the desired position; and determining another spell output intensity for the spell output for at least one other position within the region of effect such that the other spell output intensity is applied to the one or more second devices having a position that is equal to the at least one other position, wherein the other spell output intensity is based on a first distance and a second distance, the first distance being a distance between the desired position and the other position and the second distance being a distance between the wand position and the other position, wherein the third instruction instructs the accounting server to alter the user profile according to the defined spell output, the desired spell output intensity, and the other spell output intensity.
Example 55 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 56 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the defining the spell output comprises: defining a first device type for the spell output such that the first instruction indicates to activate ones of the one or more first devices having a device type matching the defined first device type; and defining a second device type for the spell output such that the second instruction indicates to activate ones of the one or more second devices having a device type matching the defined second device type.
Example 57 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the defining the spell output further comprises: defining a desired audio output when the first device type includes one or more audio devices; defining a desired light sequence when the first device type includes one or more light emitting diodes; defining at least one of a sequence of vibrations or a sequence of mechanical motions when the first device type includes one or more haptic feedback devices or one or more actuators; and defining a desired temperature when the first device type includes one or more heating elements.
Example 58 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the defining the spell output further comprises: defining a desired program code for execution when the second device type includes one or more computing devices; defining a desired alteration to the spell output when the second device type includes one or more auxiliary devices; defining one or more desired services to access via one or more IoT devices when the second device type includes the one or more IoT devices; defining a desired audio output when the second device type includes one or more audio devices; and defining a desired video output when the second device type includes one or more display devices.
Example 59 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the desired alteration to the spell output comprises: defining an increment amount for incrementing an auxiliary device counter or defining a decrement amount for decrementing the auxiliary device counter; and defining an alteration threshold, wherein the alteration to the spell output expires when the auxiliary device counter reaches the alteration threshold.
Example 60 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: defining another spell output to be associated with the spell wherein the other spell output indicates at least one of another first instruction and another second instruction, wherein the other spell output is to be performed when spell sequence generated based on a set of performed gestures does not match the defined spell sequence.
Example 61 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the computing device resides within a client computing device, and wherein the one or more gestures to be performed and the spell output to be associated with the one or more gestures are defined using one or more graphical control elements within a webpage.
Example 62 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the computing device resides in the wand, and wherein the one or more gestures to be performed are defined by performing the one or more gestures using the wand, and the spell output to be associated with the one or more gestures is defined by at least one of a voice command, activating the one or more first devices, and activating the one or more second devices.
Example 63 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: providing the second indicator indicating the availability of the spell to another wand when the one or more gestures are performed.
Example 64 may include at least one non-transitory computer-readable medium including instructions to cause a computing device, in response to execution of the instructions by the computing device, to perform the method according to any of the preceding examples and/or according to any of the examples described herein.
Example 65 may include a computer-implemented method for discovering a spell, the spell being performed by a user using a wand, the method comprising: receiving, by a computing device associated with the wand, a spell wherein the spell is associated with a spell sequence and a spell output, and the spell output is provided when one or more defined gestures delineated by the spell sequence are performed using the wand, and wherein the spell output indicates at least one of a first instruction for activating one or more first devices and a second instruction for activating one or more second devices; capturing, by the computing device, one or more performed gestures using the wand; determining, by the computing device, whether the one or more performed gestures match the one or more defined gestures; and when the determining determines that the one or more performed gestures match the one or more defined gestures, transmitting, by the processor, at least one of the first instruction to the one or more first devices and the second instruction to the one or more second devices.
Example 66 may include the method of any of the preceding examples, and/or any of the examples described herein, the one or more first devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and the one or more second devices include at least one of one or more computing devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.
Example 67 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the receiving comprises: scanning, using an image sensor of the computing device, an image code, wherein the image code comprises one of the spell or a webpage address for obtaining the spell.
Example 68 may include at least one non-transitory computer-readable medium including instructions to cause a computing device, in response to execution of the instructions by the computing device, to perform the method according to any of the preceding examples and/or according to any of the examples described herein.
Example 69 may include a computer-implemented method for casting a spell to be performed using a wand, the method comprising: obtaining, by a computing device, a spell sequence indicative of one or more performed gestures wherein the one or more performed gestures are movements performed by the user using the wand; obtaining, by the computing device, a plurality of spells according to a user profile associated with the user, wherein each of the plurality of spells includes a defined spell sequence and an associated spell output, wherein the defined spell sequence defines one or more defined gestures to be performed for obtaining the associated spell output, and wherein the spell output indicates at least one of a first instruction for activating one or more first devices and a second instruction for activating one or more second devices; determining, by the computing device, a matching spell of the plurality of spells by comparing the spell sequence with the defined spell sequence of each of the plurality of spells; determining, by the computing device, a region of effect of the wand based on the user profile and a wand position wherein the wand position is a position of the wand relative to the one or more second devices; determining, by the computing device, whether the one or more second devices are within the region of effect; and casting the spell including providing, by the computing device, at least one of the first instruction to the one or more first devices according to the spell output associated with the matching spell and the second instruction to the one or more second devices according to the spell output associated with the matching spell and when the one or more second devices are determined to be within the region of effect.
Example 70 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, and a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 71 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: providing a third instruction based on the spell output to an accounting server, wherein the accounting server is to alter the user profile according to the spell output.
Example 72 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the spell sequence is captured during a defined period of time during for performing one or more gestures.
Example 73 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area, and the method further comprises: determining a spell output intensity for the spell output, wherein the spell output intensity is based on a position of the one or more second devices within the region of effect relative to the wand position and the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 74 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the comparing comprises: determining a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence; and adjusting the spell output intensity based on the degree of similarity including decreasing the spell output intensity according to the number and order of operations of the spell sequence that match the number and order of operations of the defined spell sequence.
Example 75 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: determining an amount of charge in a battery of the wand; and adjusting the spell output intensity based on the amount of charge.
Example 76 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 77 may include the method of any of the preceding examples, and/or any of the examples described herein, further comprising: determining a first device type for the one or more first devices; and determining a second device type for the one or more second devices within the region of effect.
Example 78 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the providing the first instruction comprises: instructing the one or more first devices to output a desired audio output when the first device type includes one or more audio devices; instructing the one or more first devices to output a desired light sequence when the first device type includes one or more light emitting diodes; instructing the one or more first devices to output at least one of a sequence of vibrations or a sequence of mechanical motions when the first device type includes one or more haptic feedback devices or one or more actuators; and instructing the one or more first devices to output a desired temperature when the first device type includes one or more heating elements.
Example 79 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the providing the second instruction comprises: instructing the one or more second devices to output a desired program code for execution when the second device type includes one or more computing devices; instructing the one or more second devices to output one or more desired services to access via one or more IoT devices when the second device type includes the one or more IoT devices; instructing the one or more second devices to output a desired audio output when the second device type includes one or more audio devices; instructing the one or more second devices to output a desired video output when the second device type includes one or more display devices; and instructing the one or more first devices or the one or more second devices to alter the spell output when the second device type includes one or more auxiliary devices.
Example 80 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the altering the spell output comprises: determining whether an auxiliary device counter associated with the one or more auxiliary devices has reached an alteration threshold; altering the spell output according to a defined alteration when the auxiliary device counter is determined to not have reached to alteration threshold wherein the defined alteration is based on a device type of the one or more auxiliary devices; and incrementing or decrementing the auxiliary device counter, wherein the alteration to the spell output expires when the auxiliary device counter reaches the alteration threshold.
Example 81 may include the method of any of the preceding examples, and/or any of the examples described herein, wherein the plurality of spells includes error spell associated with an error spell output including, and the method further comprises: providing the error spell output when the comparing does not yield the matching spell.
Example 82 may include at least one non-transitory computer-readable medium including instructions to cause a computing device, in response to execution of the instructions by the computing device, to perform the method according to any of the preceding examples and/or according to any of the examples described herein.
Example 83 may include a system comprising: an accounting server; a wand; a computing device; and one or more second devices. The wand comprises: at least one processor; one or more sensors, communicatively coupled with the at least one processor, to detect one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures; a device interface module to operate on the at least one processor to obtain, from the one or more sensors, the sensor data representative of the one or more gestures; a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence; and wand communication module, communicatively coupled with the at least one processor, to transmit the spell sequence to a computing device, and receive, from the computing device, a spell output based on the spell sequence and a wand position. The computing devices comprises a spell determination module to operate on at least one processor of the computing device to determine a spell from a plurality of spells based on the spell sequence wherein each of the plurality of spells is associated with a defined spell sequence, determine a spell output associated with the determined spell, and provide a message that indicates the determined spell output; and wherein the spell module is to transmit a first instruction to the device interface module to activate one or more first devices according to the spell output or the computing device is to transmit a second instruction to one or more second devices to activate the one or more second devices.
Example 84 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, or a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 85 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell module is to record the sensor data representative of the one or more gestures during a period of time, and convert the sensor data representative of the one or more gestures performed during the period of time into the spell sequence, and the sensor data representative of the one or more gestures performed outside of the period of time are excluded from the spell sequence or included in another spell sequence.
Example 86 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the spell, the spell determination module is to compare the spell sequence with the defined spell sequence for each of the plurality of spells, determine a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence, and select the spell wherein the spell has a greatest degree of similarity among the plurality of spells.
Example 87 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell determination module is to determine the wand position relative to the one or more second devices, determine a spell output target device based on the wand position wherein the spell output target device is at least one of the one or more second devices to which the wand is directed by the user, and determine a spell output intensity based on a distance between the wand position and a position of the spell output target device wherein the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 88 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to obtain an identifier for each of the one or more second devices, wherein each identifier indicates a device type and a device position of a corresponding one of the one or more second devices.
Example 89 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to determine a region of effect for the wand based on a user profile associated with the user wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area, and the spell determination module is to determine whether the one or more second devices are within the region of effect based on the device position indicated by the obtained identifier.
Example 90 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 91 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell output intensity is also based on the degree of similarity such that an increase in the degree of similarity is to provide an increase in the spell output intensity and a decrease in the degree of similarity is to provide a decrease in the spell output intensity.
Example 92 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the device interface module is to determine an amount of charge in a battery of the wand, and the wand communication module is to provide the amount of charge to the computing device with the spell sequence, and the computing device is to determine the spell output intensity based on the amount of charge.
Example 93 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the spell output indicates to activate the one or more first devices, the first instruction is to activate the one or more first devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell; and when the spell output indicates to activate the spell output target device, the second instruction is to activate the one or more second devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell.
Example 94 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more first devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and the one or more second devices include at least one of one or more other computing devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.
Example 95 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more first devices include the one or more audio devices, the one or more audio devices include a Bluetooth headset.
Example 96 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices include the one or more display devices, the one or more display devices include an augmented reality headset capable of displaying the spell output.
Example 97 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the first instruction is to instruct the one or more first devices to output a desired audio output when the one or more first devices include the one or more audio devices; emit a desired light sequence when the one or more first devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion when the one or more first devices include the one or more haptic feedback devices or the one or more actuators; and heat the wand to a desired temperature when the one or more first devices include the one or more heating elements.
Example 98 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the second instruction is to instruct the one or more second devices to execute desired program code when the one or more second devices include the one or more other computing devices; access one or more services associated with the one or more IoT devices when the one or more second devices include the one or more IoT devices; output a desired audio output when the one or more second devices include the one or more audio devices; output a desired video output when the one or more second devices include the one or more display devices; and record the spell output when the one or more second devices include the one or more other wands.
Example 99 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the computing device is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and the spell determination module is to alter the spell output and determine the spell output intensity based on the auxiliary device identifier.
Example 100 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to obtain the auxiliary device identifier the computing device is to detect the one or more auxiliary devices by way of a scan of a region surrounding the wand for an auxiliary device signal that is broadcast by the one or more auxiliary devices wherein the auxiliary device signal includes the auxiliary device identifier.
Example 101 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the computing device is to detect the at least one other wand, and when the computing device detects the at least one other wand, the computing device is to obtain a wand signal from the at least one other wand wherein the wand signal indicates another spell output of the at least one other wand, wherein the other spell output indicates an alteration to a user profile of a user operating the wand.
Example 102 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more sensors include an accelerometer, a geomagnetic sensor, a gyroscope, a microphone, and a biometric sensor.
Example 103 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include an input of the biometric sensor such that the spell sequence is unique to the user, and one or more other gestures performed by another user using the wand are unique to the other user.
Example 104 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the accelerometer, the geomagnetic sensor, and the gyroscope are to provide spatial coordinates of the wand and the one or more gestures include a change in the spatial coordinates of the wand.
Example 105 may include a system comprising: an accounting server, a wand, and one or more second devices. The wand comprises: at least one processor; one or more sensors, communicatively coupled with the at least one processor, to detect one or more one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures; a device interface module to operate on the at least one processor to obtain, from one or more sensors, the sensor data representative of the one or more gestures; a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence, wherein the spell module includes a spell determination module to determine a spell from a plurality of spells based on the spell sequence wherein each of the plurality of spells is associated with a defined spell sequence, determine a spell output associated with the determined spell and based on a wand position, and provide the spell output by way of at least one of a first instruction to the device interface module to activate one or more first devices and a second instruction to a wand communication module to activate one or more second devices; and the wand communication module, communicatively coupled with the at least one processor, to transmit the second instruction to the one or more second devices, and transmit the determined spell to an accounting server to cause the accounting server to alter a user profile associated with the user of the wand based on the determined spell.
Example 106 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include at least one of a change in the wand position, a change in a wand orientation, or a voice command issued by the user, wherein the wand position is a position of the wand relative to the one or more second devices and the wand orientation is an angle of the wand relative to an object.
Example 107 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell module is to record the sensor data representative of the one or more gestures during a period of time, and convert the sensor data representative of the one or more gestures performed during the period of time into the spell sequence, and the sensor data representative of the one or more gestures performed outside of the period of time are excluded from the spell sequence or included in another spell sequence.
Example 108 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the spell, the spell determination module is to compare the spell sequence with the defined spell sequence for each of the plurality of spells, determine a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence, and select the spell wherein the spell has a greatest degree of similarity among the plurality of spells.
Example 109 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell determination module is to determine the wand position relative to the one or more second devices, determine a spell output target device based on the wand position wherein the spell output target device is at least one of the one or more second devices to which the wand is directed by the user, and determine a spell output intensity based on a distance between the wand position and a position of the spell output target device wherein the spell output intensity indicates an intensity at which the one or more first devices and the one or more second device are to be activated.
Example 110 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to obtain an identifier for each of the one or more second devices, wherein each identifier indicates a device type and a device position of a corresponding one of the one or more second devices.
Example 111 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to determine the wand position relative to the one or more second devices, the spell determination module is to determine a region of effect for the wand based on a user profile associated with the user wherein the region of effect defines an area in which the spell output is to be applied to the one or more second devices within the area, and the spell determination module is to determine whether the one or more second devices are within the region of effect based on the device position indicated by the obtained identifier.
Example 112 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the region of effect is defined by a cone, wherein the cone has an area defined by a height and a base radius, and an apex of the cone originates from a portion of the wand.
Example 113 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the spell output intensity is also based on the degree of similarity such that an increase in the degree of similarity is to provide an increase in the spell output intensity and a decrease in the degree of similarity is to provide a decrease in the spell output intensity.
Example 114 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the device interface module is to determine an amount of charge in a battery of the wand, and spell determination module is to determine the spell output intensity based on the amount of charge.
Example 115 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the wand communication module is to provide, to the accounting server, the determined spell, the spell output target device, and the spell output intensity, wherein the accounting server is to alter a user profile associated with the user based on the determined spell, the spell output target device, and the spell output intensity, and wherein the accounting server is to alter another user profile associated with another user based on the determined spell and the spell output intensity when the spell output target device is another wand.
Example 116 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the spell output indicates to activate the one or more first devices, the first instruction is to activate the one or more first devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell; and when the spell output indicates to activate the spell output target device, the second instruction is to activate the one or more second devices at the spell output intensity, to perform, based on the degree of similarity, one of, a desired operation which indicates that the spell sequence matched the defined spell sequence associated with the spell, or an undesired operation which indicates that the spell sequence did not match the defined spell sequence associated with the spell.
Example 117 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more first devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and the one or more second devices include at least one of one or more computing devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.
Example 118 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more first devices include the one or more audio devices, the one or more audio devices include a Bluetooth headset.
Example 119 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices include the one or more display devices, the one or more display devices include an augmented reality headset capable of displaying the spell output.
Example 120 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the first instruction is to instruct the one or more first devices to output a desired audio output when the one or more first devices include the one or more audio devices; emit a desired light sequence when the one or more first devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion when the one or more first devices include the one or more haptic feedback devices or the one or more actuators; and heat the wand to a desired temperature when the one or more first devices include the one or more heating elements.
Example 121 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the wand communications module is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and provide the auxiliary device identifier to the spell determination module with the spell sequence, and the spell determination module is to determine the spell output and the spell output intensity based on the auxiliary device identifier.
Example 122 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the second instruction is to instruct the one or more second devices to execute desired program code when the one or more second devices include the one or more other computing devices; access one or more services associated with the one or more IoT devices when the one or more second devices include the one or more IoT devices; output a desired audio output when the one or more second devices include the one or more audio devices; output a desired video output when the one or more second devices include the one or more display devices; and record the spell output when the one or more second devices include the one or more other wands.
Example 123 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein when the one or more second devices includes the one or more auxiliary devices, the wand communication module is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and the spell determination module is to alter the spell output and determine the spell output intensity based on the auxiliary device identifier.
Example 124 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein to obtain the auxiliary device identifier the wand communication module is to detect the one or more auxiliary devices by way of a scan of a region surrounding the wand for an auxiliary device signal that is broadcast by the one or more auxiliary devices wherein the auxiliary device signal includes the auxiliary device identifier.
Example 125 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the wand communication module is to detect the at least one other wand, and when the wand communication module detects the at least one other wand, the computing device is to obtain a wand signal from the at least one other wand wherein the wand signal indicates another spell output of the at least one other wand, wherein the other spell output indicates an alteration to a user profile of a user operating the wand.
Example 126 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more sensors include an accelerometer, a geomagnetic sensor, a gyroscope, a microphone, and a biometric sensor, wherein the biometric sensor includes at least one of an infrared heart rate monitoring device, a fingerprint or handprint scanning device, an eye scanning device, an electromyography (EMG) device, and an electroencephalograph (EEG) device.
Example 127 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the one or more gestures include an input of the biometric sensor such that the spell sequence is unique to the user, and one or more other gestures performed by another user using the wand are unique to the other user.
Example 128 may include the system of any of the preceding examples, and/or any of the examples described herein, wherein the accelerometer, the geomagnetic sensor, and the gyroscope are to provide spatial coordinates of the wand and the one or more gestures include a change in the spatial coordinates of the wand.
Although certain embodiments have been illustrated and described herein for purposes of description, a wide variety of alternate and/or equivalent embodiments or implementations calculated to achieve the same purposes may be substituted for the embodiments shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the embodiments discussed herein, limited only by the claims.

## Claims

1. A wand comprising:
at least one processor;
one or more sensors, communicatively coupled with the at least one processor, to detect one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures;
a device interface module to operate on the at least one processor to obtain, from the one or more sensors, the sensor data representative of the one or more gestures;
a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence;
communication circuitry, communicatively coupled with the at least one processor, to communicatively attach to a computer device, transmit the spell sequence to the computer device, and receive, from the computer device, a spell output based on the spell sequence, a first wand position relative to an external output device, and a second wand position relative to an auxiliary device, wherein the external output device and the auxiliary device are disposed outside of a housing of the wand, the external output device is detached from the wand, and the auxiliary device is attached or unattached to the housing of the wand; and
one or more internal output devices, communicatively coupled with the at least one processor, to obtain a first instruction from the device interface module for activation of the one or more internal output devices to provide the spell output to the user, wherein the internal output devices are disposed within the housing of the wand.

2. The wand of claim 1, wherein the computer device is to transmit a second instruction to the external output device to activate the external output device.

3. The wand of claim 2, wherein the one or more gestures include at least one of a change in the first wand position, a change in a wand orientation, or a voice command issued by the user, wherein the first wand position is a position of the wand relative to one or more external output devices and the wand orientation is an angle of the wand relative to an object.

4. The wand of claim 3, wherein the spell module is to record the sensor data representative of the one or more gestures during a period of time, and convert the sensor data representative of the one or more gestures performed during the period of time into the spell sequence, and the sensor data representative of the one or more gestures performed outside of the period of time are excluded from the spell sequence or included in another spell sequence.

5. The wand of claim 3, wherein:
the one or more sensors include an accelerometer, a geomagnetic sensor, a gyroscope, a microphone, and a biometric sensor,
the one or more internal output devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and
the one or more external output devices include at least one of one or more remote computer devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and one or more other wands.

6. The wand of claim 5, wherein the one or more gestures include an input of the biometric sensor such that the spell sequence is unique to the user, and one or more other gestures performed by another user using the wand are unique to the other user.

7. The wand of claim 5, wherein the accelerometer, the geomagnetic sensor, and the gyroscope are to provide spatial coordinates of the wand and the one or more gestures include a change in the spatial coordinates of the wand.

8. A wand comprising:
at least one processor;
one or more sensors, communicatively coupled with the at least one processor, to detect one or more gestures wherein the one or more gestures are movements performed using the wand by a user of the wand, and generate sensor data representative of the one or more gestures;
a device interface module to operate on the at least one processor to obtain, from one or more sensors, the sensor data representative of the one or more gestures;
a spell module to operate on the at least one processor to receive, from the device interface module, the sensor data representative of the one or more gestures, and convert the sensor data representative of the one or more gestures into a spell sequence, wherein the spell module includes a spell determination module to:
determine a spell from a plurality of spells based on the spell sequence wherein each of the plurality of spells is associated with a defined spell sequence,
determine a spell output associated with the determined spell, wherein the spell output is based on the determined spell, a first wand position of the wand relative to one or more external output devices and a second wand position of the wand relative to one or more auxiliary devices, wherein the external output device and the auxiliary device are disposed outside of a housing of the wand, the external output device is detached from the wand, and the auxiliary device is attached or unattached to the housing of the wand,
generate a first instruction and a second instruction, and
provide the first instruction to the device interface module for activation of one or more internal output devices and a second instruction to communication circuitry for activation of the one or more external output devices, wherein the one or more internal output devices are disposed within the housing of the wand and the one or more second devices are external to the housing of the wand and not attached to the wand;

the communication circuitry, communicatively coupled with the at least one processor, to transmit the second instruction to the one or more external output devices, and transmit the determined spell to an accounting server to cause the accounting server to alter a user profile associated with the user of the wand based on the determined spell; and
the one or more internal output devices, communicatively coupled with the at least one processor, to obtain a first instruction from the device interface module for activation of the one or more internal output devices to provide the spell output to the user.

9. The wand of claim 8, wherein the spell determination module is to:
determine the first wand position relative to the one or more external output devices,
determine a spell output target device based on the first wand position, wherein the spell output target device is at least one of the one or more external output devices to which the wand is directed by the user, and
determine a spell output intensity based on a distance between the wand and a position of the spell output target device, an a amount of the time of performance of the one or more gestures and a number of times that the spell output is generated based on the second wand position, wherein the spell output intensity indicates an intensity at which the one or more internal output devices and the one or more external output devices are to be activated.

10. The wand of claim 9, wherein to determine the wand position relative to the one or more external output devices, the spell determination module is to:
obtain an identifier for each of the one or more external output devices, wherein each identifier indicates a device type and a device position of a corresponding one of the one or more external output devices.

11. The wand of claim 10, wherein to determine the wand position relative to the one or more external output devices, the spell determination module is to:
determine a region of effect for the wand based on a user profile associated with the user wherein the region of effect defines an area in which the spell output is to be applied to the one or more external output devices within the area, and
determine whether the one or more external output devices are within the region of effect based on the device position indicated by the obtained identifier.

12. The wand of claim 10, wherein
the one or more internal output devices include at least one of one or more audio devices, one or more light emitting diodes, one or more haptic feedback devices or one or more actuators, and one or more heating elements, and
the one or more external output devices include at least one of one or more computer devices, one or more auxiliary devices, one or more Internet of Things (IoT) devices, one or more audio devices, one or more display devices, and at least one other wand.

13. The wand of claim 12, wherein the first instruction is to instruct the one or more internal output devices to output a desired audio output when the one or more internal output devices include the one or more audio devices; emit a desired light sequence when the one or more internal output devices include the one or more light emitting diodes; activate at least one of a vibration and a mechanical motion when the one or more internal output devices include the one or more haptic feedback devices or the one or more actuators; and heat the wand to a desired temperature when the one or more internal output devices include the one or more heating elements.

14. The wand of claim 12, wherein when the one or more external output devices includes the one or more auxiliary devices, a wand communications module is to obtain an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and provide the auxiliary device identifier to the spell determination module with the spell sequence, and the spell determination module is to determine the spell output and the spell output intensity based on the auxiliary device identifier.

15. The wand of claim 14, wherein the second instruction is to instruct the one or more external output devices to execute desired program code when the one or more external output devices include the one or more other computer devices; access one or more services associated with the one or more IoT devices when the one or more external output devices include the one or more IoT devices; output a desired audio output when the one or more external output devices include the one or more audio devices; output a desired video output when the one or more external output devices include the one or more display devices; and record the spell output when the one or more external output devices include the one or more other wands.

16. The wand of claim 15, wherein, when the one or more external output devices include the one or more auxiliary devices, the communication circuitry is to:
receive an auxiliary device identifier from each of the one or more auxiliary devices wherein the auxiliary device identifier indicates to alter at least one of the spell output and the spell output intensity, and wherein the spell determination module is to alter the spell output and determine the spell output intensity based on the auxiliary device identifier.

17. The wand of claim 16, wherein, to obtain the auxiliary device identifier, the communication circuitry is to detect signals of the one or more auxiliary devices by way of a scan of a region surrounding the wand for an auxiliary device signal that is broadcast by the one or more auxiliary devices wherein the auxiliary device signal includes the auxiliary device identifier.

18. A computer-implemented method for creating a spell to be performed using a wand, the method comprising:
defining, with a computer device associated with the wand, one or more gestures to be performed, wherein the one or more gestures are movements performed by a user using the wand;
defining, with the computer device, a spell output to be associated with the one or more gestures and a wand position wherein the spell output indicates at least one of a first instruction for activating one or more internal output devices internal to a housing of the wand and a second instruction for activating one or more external output devices external to the housing of the wand and not attached to the housing of the wand;
defining, by the computer device, a threshold and another spell output to be associated with a degree of similarity that is below the threshold, wherein the degree of similarity indicates a number and order of operations of one or more performed gestures that matches a number and order of the defined one or more gestures, wherein the other spell output comprises at least one of another first instruction for activating one or more internal output devices and another second instruction for activating one or more external output devices, wherein the other first instructions is different than the first instruction and the other second instruction is different than the second instruction;
generating, by the computer device, a defined spell sequence to be performed using the wand to obtain the spell output and the other spell output, the defined spell sequence being based on the defined one or more gestures;
providing, by the computer device, the defined spell sequence to the wand, wherein the wand indicates to the user to perform the one or more gestures delineated by the defined spell sequence;
receiving, by the computer device, a first indicator indicating that the user performed the one or more gestures delineated by the defined spell sequence;
storing, by the computer device, the defined spell sequence in association with the defined spell output in response to the receiving; and
providing, by the computer device to the wand, a second indicator indicating an availability of the spell that provides the defined spell output when the one or more gestures are performed.

19. The method of claim 18, further comprising:
defining a region of effect for the defined spell output wherein the region of effect defines an area in which the spell output is to be applied to the one or more external output devices within the area wherein a spell output intensity is based on a position of the one or more external output devices within the region of effect wherein the spell output intensity indicates an intensity at which the one or more internal output devices and the one or more external output device are to be activated.

20. The method of claim 19, further comprising:
defining a desired spell output intensity for the spell output based on a desired position within the region of effect such that the desired spell output intensity is applied to the one or more external output devices having a position that is equal to the desired position; and
determining another spell output intensity for the spell output for at least one other position within the region of effect such that the other spell output intensity is applied to the one or more external output devices having a position that is equal to the at least one other position, wherein the other spell output intensity is based on a first distance and a second distance, the first distance being a distance between the desired position and the other position and the second distance being a distance between the wand position and the other position.

21. A computer-implemented method for casting a spell to be performed using a wand, the method comprising:
obtaining, by a computer device, a spell sequence indicative of one or more performed gestures wherein the one or more performed gestures are movements performed by a user using the wand;
obtaining, by the computer device, a plurality of spells according to a user profile associated with the user, wherein each of the plurality of spells includes a defined spell sequence and an associated spell output, wherein the defined spell sequence defines one or more defined gestures to be performed for obtaining the associated spell output, and wherein the spell output indicates at least one of a first instruction for activating one or more internal output devices internal to a housing of the wand and a second instruction for activating one or more external output devices external to the housing of the wand and detached from the housing of the wand;
determining, by the computer device, a matching spell of the plurality of spells by comparing the spell sequence with the defined spell sequence of each of the plurality of spells;
determining by the computer device, a degree of similarity between the spell sequence and the defined spell sequence of each of the plurality of spells, wherein the degree of similarity indicates a number and order of operations of the spell sequence that matches a number and order of operations of the defined spell sequence;
altering the spell output when the degree of similarity is less than a threshold:
determining, by the computer device, a region of effect of the wand based on the user profile and a wand position wherein the wand position is a position of the wand relative to the one or more external output devices;
determining, by the computer device, whether the one or more external output devices are within the region of effect; and
casting the spell including providing, by the computer device, at least one of the first instruction to the one or more internal output devices according to the spell output associated with the matching spell and the second instruction to the one or more external output devices according to the spell output associated with the matching spell and when the one or more external output devices are determined to be within the region of effect.

22. The method of claim 21, wherein the region of effect defines an area in which the spell output is to be applied to the one or more external output devices within the area, and the method further comprises:
determining by the computer device, a spell output intensity for the spell output, wherein the spell output intensity is based on a position of the one or more external output devices within the region of effect relative to the wand position and the spell output intensity indicates an intensity at which the one or more internal output devices and the one or more external output device are to be activated: and
adjusting by the computer device, the spell output intensity based on the degree of similarity including decreasing the spell output intensity according to the number and order of operations of the spell sequence that match the number and order of operations of the defined spell sequence and based on a distance between the position of the one or more external output devices within the region of effect and the wand position including decreasing the spell output intensity as the distance increases.

23. The method of claim 22, further comprising:
determining an amount of charge in a battery of the wand; and
adjusting the spell output intensity based on the amount of charge.

24. The method of claim 21, further comprising:
determining an internal output device type for the one or more internal output devices; and
determining an external output device type for the one or more external output devices within the region of effect.

25. The method of claim 24, wherein the providing the first instruction comprises:
instructing the one or more internal output devices to output a desired audio output when the internal output device type includes one or more audio devices;
instructing the one or more internal output devices to output a desired light sequence when a first device type includes one or more light emitting diodes;
instructing the one or more internal output devices to output at least one of a sequence of vibrations or a sequence of mechanical motions when the internal output device type includes one or more haptic feedback devices or one or more actuators; and
instructing the one or more internal output devices to output a desired temperature when the internal output device type includes one or more heating elements.