<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel rdf:about="https://community.wolfram.com">
    <title>Community RSS Feed</title>
    <link>https://community.wolfram.com</link>
    <description>RSS Feed for Wolfram Community showing questions tagged with Packages sorted by most viewed.</description>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1108337" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/2141352" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1321057" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1715017" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1807709" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/917616" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1669257" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1161057" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1179687" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/861654" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1425074" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/403833" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/474155" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1171718" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/93435" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/1657536" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/516854" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/356717" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/295756" />
        <rdf:li rdf:resource="https://community.wolfram.com/groups/-/m/t/385892" />
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1108337">
    <title>Set up a package with Needs[]?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1108337</link>
    <description>By steps Insert/FilePath, I got a file path:&#xD;
&amp;#034;D:\\Mathematica\\Mathematica Programer II\\MATHPROG\\LOGICPROGRAMMING.M&amp;#034;,&#xD;
but &#xD;
&#xD;
    Needs[&amp;#034;D:\\Mathematica\\Mathematica Programer \&#xD;
    II\\MATHPROG`LOGICPROGRAMMING.m`&amp;#034;]&#xD;
&#xD;
&#xD;
Mathematica always says &#xD;
&#xD;
        Needs::cxt: Invalid context specified at position 1 in&#xD;
     Needs[D:\Mathematica\Mathematica Programer II\MATHPROG`LOGICPROGRAMMING.m` ]. &#xD;
    A context must consist of valid symbol names separated ` &#xD;
&#xD;
In fact I put `, What&amp;#039;s wrong?</description>
    <dc:creator>Math Logic</dc:creator>
    <dc:date>2017-05-26T03:00:05Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/2141352">
    <title>CUDA not working on Mathematica 12.2</title>
    <link>https://community.wolfram.com/groups/-/m/t/2141352</link>
    <description>Hello all :)&#xD;
CUDA is not working on 12.2.&#xD;
Look at this:&#xD;
What I am supposed to do?&#xD;
I also tried by downloading the CUDA packlets: change nothing.&#xD;
I have an NVIDIA RTX 3090 and the drivers are ok.&#xD;
Thank you foe helping me.&#xD;
Regards to all,&#xD;
&#xD;
Jean-Michel</description>
    <dc:creator>Jean-Michel Collard</dc:creator>
    <dc:date>2020-12-18T02:04:15Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1321057">
    <title>Has Wolfram abandoned the Graphs and Networks functionality?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1321057</link>
    <description>This is a cautionary tale for those who choose Mathematica as the main tool for their work.&#xD;
&#xD;
It is now clear to me that Wolfram has simply abandoned the [Graphs and Networks](http://reference.wolfram.com/language/guide/GraphsAndNetworks.html) functionality area and I am left high and dry. I have no recourse because Mathematica is closed source so there is only so much a user can do to fix or work around problems. Reporting bugs in this particular area has now clearly proven to be useless. Most simply do not get fixed, no matter how serious they are, or how great a hindrance they are to practical use. No new functionality has been added since version 10.0.  My colleagues who use other tools (mostly Python and R packages) are more productive at this point, but I have a handicap with those systems because I made the mistake of investing most of my time into Mathematica, and stayed optimistic about it even in the face of the most obvious warning signs.&#xD;
&#xD;
I am writing this post because those people who have not heavily invested in Mathematica, and in particular this functionality area of Mathematica, are not in a position to see this and may fall in the same trap I did.  What if the same thing happens to the functionality area that is critical to *your* work?&#xD;
&#xD;
Wolfram Research, of course, will not tell you that they gave up on `Graph`.  Thus, after my experience, I think I owe it to the community to warn you about the situation.&#xD;
&#xD;
----&#xD;
&#xD;
Some might ask me what specifically is wrong. I have made many posts on this forum about `Graph`-bugs (you only have to search), and I reported many more to WRI.  There is always a last strawit would be pointless to show it. Those who know me will know that I am not writing this admittedly emotional post out of ill will towards WRI. I have betted on Mathematica more than most, and have been advocating for it throughout the years. I even have a network analysis package with ~250 functions. If I am forced to abandon Mathematica for this type of work, then the countless hours that went into this package will all have been in vain.&#xD;
&#xD;
I admit that I am writing this public post partly out of desperation to try to get WRI to either fix the many serious `Graph`-problems, or otherwise publicly state that `Graph` is now abandoned so those of us who have been using it can stop wasting our time.</description>
    <dc:creator>Szabolcs Horvát</dc:creator>
    <dc:date>2018-04-16T09:54:42Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1715017">
    <title>Run MinGW in Mac?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1715017</link>
    <description>Hi,&#xD;
How can i run Min GW in Mac, do I need to rearrange these codes to make it run in Mac?&#xD;
&#xD;
Can anyone please advise?&#xD;
&#xD;
I posted the codes below.&#xD;
&#xD;
&#xD;
    Clear[&amp;#034;Global`*&amp;#034;];&#xD;
    Needs[&amp;#034;CCompilerDriver`GenericCCompiler`&amp;#034;];&#xD;
    $CCompiler = {&amp;#034;Compiler&amp;#034; -&amp;gt; &#xD;
        CCompilerDriver`GenericCCompiler`GenericCCompiler, &#xD;
       &amp;#034;CompilerInstallation&amp;#034; -&amp;gt; &amp;#034;C:\\MinGW&amp;#034;, &amp;#034;CompilerName&amp;#034; -&amp;gt; &amp;#034;gcc.exe&amp;#034;};&#xD;
    CompileOptions = {CompilationTarget -&amp;gt; &amp;#034;C&amp;#034;, &#xD;
       RuntimeOptions -&amp;gt; {&amp;#034;CatchMachineOverflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CatchMachineUnderflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CatchMachineIntegerOverflow&amp;#034; -&amp;gt; False, &#xD;
         &amp;#034;CompareWithTolerance&amp;#034; -&amp;gt; False, &amp;#034;EvaluateSymbolically&amp;#034; -&amp;gt; False,&#xD;
          &amp;#034;RuntimeErrorHandler&amp;#034; -&amp;gt; Evaluate, &amp;#034;WarningMessages&amp;#034; -&amp;gt; False}, &#xD;
       CompilationOptions -&amp;gt; {&amp;#034;InlineExternalDefinitions&amp;#034; -&amp;gt; True, &#xD;
         &amp;#034;InlineCompiledFunctions&amp;#034; -&amp;gt; True, &#xD;
         &amp;#034;ExpressionOptimization&amp;#034; -&amp;gt; True}};&#xD;
&#xD;
Thanks.</description>
    <dc:creator>adrian leong</dc:creator>
    <dc:date>2019-06-29T10:27:32Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1807709">
    <title>Interface with R in Mathematica 12 and R 3.6.1?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1807709</link>
    <description>Hello everybody!&#xD;
&#xD;
 I wrote a number of notebooks calling R packages. But using up-to-date versions (Mathematica 12 and R 3.6.1), nothing works any more! For instance, it seems the default distribution doesn&amp;#039;t exist now:&#xD;
&#xD;
    In[2]:= InstallR[]&#xD;
    REvaluate[&amp;#034;sample(1:100,10)&amp;#034;]&#xD;
    &#xD;
    During evaluation of In[2]:= InstallR::invldrhome: The specified path to R home directory does not point to a valid directory&#xD;
    &#xD;
    Out[2]= $Failed&#xD;
&#xD;
I tried to use my own distribution, but it is not recognized!&#xD;
&#xD;
    In[4]:= InstallR[&amp;#034;RHomeLocation&amp;#034; -&amp;gt; &amp;#034;C:/PROGRA~1/R/R-36~1.1&amp;#034;, &#xD;
     &amp;#034;RVersion&amp;#034; -&amp;gt; &amp;#034;3.6.1&amp;#034;]&#xD;
    &#xD;
    During evaluation of In[5]:= InstallR::fail: Failed to install R. The following error was encountered: crash in low-level RLink component or in R runtime&#xD;
    &#xD;
    Out[5]= $Failed&#xD;
&#xD;
It seems there is an issue with the R.dll file (dll:  3.6.1, expecting 3.5.0). What can I do? Install an older version of R? Which one?&#xD;
&#xD;
Best regards,&#xD;
Claude</description>
    <dc:creator>Claude Mante</dc:creator>
    <dc:date>2019-10-15T09:19:47Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/917616">
    <title>Training loss goes to 0 when specifying TargetDevice = GPU</title>
    <link>https://community.wolfram.com/groups/-/m/t/917616</link>
    <description>HI -- The neural network package is really cool. I&amp;#039;m learning a lot from experimenting with it. I have noticed one odd thing I can&amp;#039;t explain. I have a fairly simple CNN that I train on some images. It trains (although super-slowly) on my CPU, with a more or less reasonable loss getting smaller on each training round. But when I set TargetDevice = &amp;#034;GPU&amp;#034; it instantly reports 0 loss and finishes in just a couple seconds. As one clue, I had an Nvidia 970 with the latest Nvidia drivers and this didn&amp;#039;t happen. I just upgraded to a new 1080 (partially for faster network training!), and that is when this started happening. &#xD;
&#xD;
I&amp;#039;ve attached a Notebook that demonstrates this behavior and has SystemInformation[] in it. (It does use images that aren&amp;#039;t included, but I don&amp;#039;t think there is anything special about them, they are just a bunch of JPEGs). I&amp;#039;m running Nvidia driver 372.70. If there is a different driver I should be using instead, please let me know. Thanks!</description>
    <dc:creator>David Cardinal</dc:creator>
    <dc:date>2016-09-01T21:46:08Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1669257">
    <title>Find gcc compiler using Mathematica V12?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1669257</link>
    <description>I installed gcc but Mathematica (12) cannot seem to find it.&#xD;
&#xD;
I installed gcc two ways: (i) via MinGW and (ii) CodeBlocks.  A windows command line check confirms the compilers are installed.&#xD;
&#xD;
I updated my Windows Environments.  GetEnvironment[] now shows Path -&amp;gt; ..... C:\\ Program Files (x86)\\ CodeBlocks \\ MinGW \\ bin;C:\\ MinGW \\ \ ....&#xD;
&#xD;
Still Mathematica does not find it.  Executing&#xD;
&#xD;
    Needs[&amp;#034;CCompilerDriver`&amp;#034;]&#xD;
    CCompilers[]&#xD;
    CCompilers[Full]&#xD;
&#xD;
yields&#xD;
&#xD;
    {}&#xD;
    {{&amp;#034;Name&amp;#034; -&amp;gt; &amp;#034;Intel Compiler&amp;#034;, &#xD;
      &amp;#034;Compiler&amp;#034; -&amp;gt; CCompilerDriver`IntelCompiler`IntelCompiler, &#xD;
      &amp;#034;CompilerInstallation&amp;#034; -&amp;gt; None, &#xD;
      &amp;#034;CompilerName&amp;#034; -&amp;gt; Automatic}, {&amp;#034;Name&amp;#034; -&amp;gt; &amp;#034;Generic C Compiler&amp;#034;, &#xD;
      &amp;#034;Compiler&amp;#034; -&amp;gt; CCompilerDriver`GenericCCompiler`GenericCCompiler, &#xD;
      &amp;#034;CompilerInstallation&amp;#034; -&amp;gt; None, &amp;#034;CompilerName&amp;#034; -&amp;gt; Automatic}}&#xD;
&#xD;
Attempting to Compile using CompilationTarget -&amp;gt; &amp;#034;C&amp;#034; produces the errors&#xD;
&#xD;
    - CreateLibrary::nocomp: A C compiler cannot be found on your system. Please consult the documentation to learn how to set up suitable compilers.&#xD;
    - Compile::nogen: A library could not be generated from the compiled function.&#xD;
&#xD;
I consulted the documentation, but don&amp;#039;t get anywhere. &#xD;
&#xD;
PS: tried compiling using the new FunctionCompile but this produces much slower code than Compile without CompilationTarget -&amp;gt; &amp;#034;C&amp;#034;&#xD;
&#xD;
Thanks,&#xD;
Eric</description>
    <dc:creator>Eric Michielssen</dc:creator>
    <dc:date>2019-04-25T17:18:09Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1161057">
    <title>Castlevania Stage 1 Demo</title>
    <link>https://community.wolfram.com/groups/-/m/t/1161057</link>
    <description>Update 1: added examples about side-scrolling and the reason for a time-scale factor.&#xD;
&#xD;
Since making [Flappy Bird in the Wolfram Language][1], I decided to up the ante with a playable demo of a video game classic, Castlevania for the Nintendo Entertainment System. To limit the scope of the project, I only recreated the first stage, but modified it to play like &amp;#034;horde mode&amp;#034; where enemies continuously spawn:&#xD;
&#xD;
![Gameplay][2]&#xD;
&#xD;
The package can be downloaded from my github account: [CastlevaniaDemo_WolframLanguage][3].&#xD;
&#xD;
# Controls #&#xD;
&#xD;
I wanted to avoid using keyboard events since they block, i.e. you can&amp;#039;t hold the right-arrow key and press another key (to jump) at the same time. Instead, I use an Xbox controller because I&amp;#039;m on a Windows computer and it has the device drivers already installed. It makes connecting the controller as easy as turning in on. If you want to use a different controller, then you may need to re-map some of the [`ControllerState`][4]s.&#xD;
&#xD;
![enter image description here][5]&#xD;
&#xD;
I tried to mimic the original controls where you can move left and right, as well as crouch or stand using the directional pad. Only two buttons are used: one to jump and one to crack the whip. The crouch doesn&amp;#039;t help much in such a simple level, but it&amp;#039;s there nonetheless.&#xD;
&#xD;
# Design #&#xD;
&#xD;
## Side-scrolling ##&#xD;
&#xD;
----------&#xD;
&#xD;
A 2-D side-scroller moves the screen as the player advances. This is straightforward to achieve using a dynamic [`PlotRange`][6]. I found the image from a basic Google search, cropped it, and used [`Inset`][7] to place it in a [`Graphics`][8] expression. To put everything in an understandable coordinate system, I adjusted the relative size (4.19) until the image spanned the vertical space from 0 to 1. The single static image `background` is&#xD;
&#xD;
![Background][9]&#xD;
&#xD;
Side-scrolling is implemented by updating the [`PlotRange`][10] dynamically over an otherwise static graphic:&#xD;
&#xD;
    Manipulate[&#xD;
        Graphics[&#xD;
            Inset[background, {0, 0}, Scaled[{0, 0}], 4.19],&#xD;
            Frame -&amp;gt; True, PlotRangeClipping -&amp;gt; True,&#xD;
            PlotRange -&amp;gt; {{Dynamic[scrollPos], Dynamic[screenWidth + scrollPos]}, {0, 1}}&#xD;
        ],&#xD;
        {{scrollPos, 0, &amp;#034;Screen Position&amp;#034;}, 0, 3},&#xD;
        {{screenWidth, 1, &amp;#034;Screen Width&amp;#034;}, 1, 2}&#xD;
    ]&#xD;
&#xD;
![Scroll Position][11]&#xD;
&#xD;
The above code is a demonstration, whereas the game updates `scrollPos` as the player moves. There are additional restrictions based on where the player is located, such that the player can walk to the edge of the screen, but the screen stops moving when the player is close.&#xD;
&#xD;
In the following, `csX` is the x-direction on the directional pad. Its value is +1 if held to the right and -1 if held to the left.&#xD;
&#xD;
    Attributes[moveRight] = {HoldRest};&#xD;
    moveRight[csX_, fps_] := (&#xD;
    	(* face player in direction of movement *)&#xD;
    	If[!playerFacingRight, playerFacingRight=True];&#xD;
    	&#xD;
    	(* update player sprite and screen position *)&#xD;
    	With[{p=playerX+(playerXvel/fps)*csX}, If[p &amp;lt; 3.55, playerX=p]];&#xD;
    	If[scrollPos &amp;lt; 2.7 &amp;amp;&amp;amp; ((scrollPos+screenWidth)/2.4 &amp;lt; playerX), scrollPos+=(scrollSpeed/fps)]&#xD;
    );&#xD;
    &#xD;
    &#xD;
    Attributes[moveLeft] = {HoldRest};&#xD;
    moveLeft[csX_, fps_] := (&#xD;
    	(* face player in direction of movement *)&#xD;
    	If[playerFacingRight, playerFacingRight=False];&#xD;
    	&#xD;
    	(* update player sprite and screen position *)&#xD;
    	With[{p=playerX+(playerXvel/fps)*csX}, If[0.07 &amp;lt; p, playerX=p]];&#xD;
    	If[scrollPos &amp;gt; 0 &amp;amp;&amp;amp; (scrollPos+screenWidth/2.3 &amp;gt; playerX), scrollPos-=(scrollSpeed/fps)]&#xD;
    );&#xD;
&#xD;
## Controlling Update Speed ##&#xD;
&#xD;
----------&#xD;
&#xD;
Instead of using a [`ScheduledTask`][12] to update at a fixed frame rate, I opted to let [`Dynamic`][13] update as fast as possible. This is reminiscent of old computer games that were tied to the processor&amp;#039;s frequency. To get around this I use a global variable `fps` to slow down the apparent motion. Said differently, the front end updates as fast as possible, but the distance a sprite moves per kernel-state-update is proportional to `fps`.&#xD;
&#xD;
The previous section shows `fps` in the player update:&#xD;
&#xD;
    p = playerX + (playerXvel / fps)*csX&#xD;
&#xD;
The player&amp;#039;s horizontal-position `playerX` is updated by the fixed horizontal-velocity `playerXvel`, but proportional to `fps`. If `fps` is larger, then the distance traveled per-kernel-update is smaller.&#xD;
&#xD;
For every moving sprite, however, the front end has to communicate more with the kernel. This causes the entire game to slow down proportionally to the number of dynamically updating expressions. I more-or-less get around this detail by linearly adjusting the global `fps` variable proportional to the number of active sprites. The rough idea is that if each sprite takes 2 units of `fps` time to update, then I should take away 2 units for each active enemy. &#xD;
&#xD;
As a toy example of this behavior, look at the following independent example:&#xD;
&#xD;
    fps = 10;&#xD;
    objList = &amp;lt;||&amp;gt;;&#xD;
    createShape[index_Integer] := Module[{pos = RandomReal[{-30, 0}, 2]},&#xD;
      object[index] := (&#xD;
        (* updated object position *)&#xD;
        pos += 0.3/fps;&#xD;
        (* if object leaves the screen, remove it from the list of objects, otherwise output graphic *)&#xD;
        If[pos.pos &amp;gt; 30^2,&#xD;
         objList = KeyDrop[objList, index]; object[index] =.,&#xD;
         {EdgeForm[Directive[Thick]], FaceForm[None], Rectangle[pos, pos + {5, 5}]}&#xD;
         ]&#xD;
        );&#xD;
      objList = &amp;lt;|objList, index :&amp;gt; object[index]|&amp;gt;&#xD;
      ]&#xD;
    &#xD;
    i = 1;&#xD;
    Column[{&#xD;
      Button[&amp;#034;Add&amp;#034;, createShape[i++]],&#xD;
      Graphics[Dynamic[Values[objList]], &#xD;
       PlotRange -&amp;gt; {{-30, 30}, {-30, 30}}, Frame -&amp;gt; True, &#xD;
       ImageSize -&amp;gt; Medium],&#xD;
      Dynamic[Length[objList]]&#xD;
      }]&#xD;
&#xD;
![enter image description here][14]&#xD;
&#xD;
Ignoring that this code produces a front-end memory leak, what you should observe is that the rectangles motion slows down as more are added. Once a few rectangles leave the &amp;#034;world&amp;#034;, the remaining rectangles speed up.&#xD;
&#xD;
In my game code where I create enemies, I use a variable `tsf` (time-scale-factor) which is just a local renaming of `fps`. It decreases when an enemy is put in motion i.e. initialized, and increases when the enemy dies or leaves the screen. Below I only show the parts where `tsf` is adjusted. `speedTrigger` is used as a flag to prevent `tsf` from updating more than once.&#xD;
&#xD;
    initializeEnemy[index, &amp;#034;ghoulRight&amp;#034;] := (&#xD;
    	. . .&#xD;
        speedTrigger=True; tsf-=2;&#xD;
    	. . .&#xD;
        enemy[index] := ( &#xD;
            If[ !dying&#xD;
                (* if exited map *)&#xD;
    	        If[xPos &amp;gt; 3.8, &#xD;
    	            . . .&#xD;
    	    	    If[speedTrigger, tsf+=2; speedTrigger = False]; &#xD;
                    . . .&#xD;
    	        ],&#xD;
    &#xD;
                (* if dead, after death animation, position enemy off screen, update score *)&#xD;
                If[speedTrigger, tsf+=2; speedTrigger = False]; &#xD;
                . . .&#xD;
            ]&#xD;
        )&#xD;
    )		&#xD;
&#xD;
&#xD;
&#xD;
&#xD;
## Sprites before hit boxes ##&#xD;
&#xD;
----------&#xD;
&#xD;
It makes more sense to place and size the sprites into the graphics before I create hit boxes. Sprite maps can be [found online][15] for many classic games. I found a character map for the main character sprite and cropped each frame. There are 12 unique frames in total for my chosen character movement, but for smooth animations some frames can be found in multiple sequences:&#xD;
&#xD;
 - four frames for walking&#xD;
&#xD;
![enter image description here][16]&#xD;
&#xD;
 - four frames for whipping while standing&#xD;
&#xD;
![enter image description here][17]&#xD;
&#xD;
 - four frames for whipping while crouched&#xD;
&#xD;
![enter image description here][18]&#xD;
&#xD;
 - three frames for character death&#xD;
&#xD;
![enter image description here][19]&#xD;
&#xD;
The above images have already been adjusted. First, I applied [`RemoveBackground`][20] and [`ImageCrop`][21] to each frame. If you naively stopped here and simply updated the first argument of [`Inset`][22] with these images, then your character would appear glitchy when switching between images. The reason is that the inset images are of different sizes. I needed to &amp;#034;normalize&amp;#034; the images to a common size.&#xD;
&#xD;
The whip frames have the largest extent (see the above images that are selected). The whip hangs below the feet while crouched. It also extends far to the left/right when fully extended. I chose common image size of 105 x 42. I first used [`ImagePad`][23] to pad each image up to the chosen size. Then I created functions for fine-tuning the sprite positions:&#xD;
&#xD;
    imageRotateLeft[im_, amount_] := If[amount == 0, &#xD;
        im,      &#xD;
        ImageAssemble[{{ImageTake[im, {1, -1}, {1 + amount, -1}], ImageTake[im, {1, -1}, {1, amount}]}}]&#xD;
    ]&#xD;
    imageRotateRight[im_, amount_] := If[amount == 0, &#xD;
        im, &#xD;
        ImageAssemble[{{ImageTake[im, {1, -1}, {-amount, -1}], ImageTake[im, {1, -1}, {1, -1 - amount}]}}]&#xD;
    ]&#xD;
&#xD;
&#xD;
I use a combination of [`Manipulate`][24] expressions to align and center each frame. One aligns one frame with another:&#xD;
&#xD;
    Manipulate[&#xD;
        left = tt[[1]];  right = tt[[2]];&#xD;
        Framed[ImageCompose[left, imageRotateLeft[right, n]], FrameMargins -&amp;gt; None], &#xD;
        {n, 0, 10, 1}&#xD;
    ]&#xD;
![enter image description here][25]&#xD;
&#xD;
&#xD;
The other aligns a frame with its reflection:&#xD;
&#xD;
    Manipulate[&#xD;
        left = tt[[m]];  right = ss[[m]];&#xD;
        Framed[ImageCompose[imageRotateRight[left, n], imageRotateLeft[right, n]], FrameMargins -&amp;gt; None], &#xD;
        {n, 0, 10, 1}, {m, 1, 4, 1}&#xD;
    ]&#xD;
    &#xD;
![Reflection Alignment][26]&#xD;
&#xD;
Having a reflection-aligned set of frames is useful when making hit boxes. That way we only need one hit box for standing and one for crouching, regardless of facing right or left. Moreover, having &amp;#034;one-size-fits-all&amp;#034; for the images, the inset size argument remains fixed.&#xD;
&#xD;
The ghoul enemy proceeds similarly, but is simpler since it is only two animation frames and does not include a moving weapon.&#xD;
&#xD;
&#xD;
## Character Controls ##&#xD;
&#xD;
----------&#xD;
&#xD;
I use a [`Module`][27] to mimic &amp;#034;static&amp;#034; variables for the player character.&#xD;
&#xD;
    Module[{playerFacingRight=True, playerCrouched=False, playerX=0.288, playerY=0.282, &#xD;
    playerXvel=0.2, scrollSpeed=0.2, im=walkingRight[[1]], &#xD;
    playerAnimationCounter=1, playerFrame=1, walkAnimationDelay=25,&#xD;
    grav=0.5, jumpVel=0.5, playerYvel=0, jumpCounter=0, previousJumpState=False,&#xD;
    whipFrame=1, whipAnimationCounter=1, previousWhipState=False, whipping=False, whipAnimationDelay=8,&#xD;
    whipStandLeftBox,whipStandRightBox,whipCrouchedLeftBox,whipCrouchedRightBox,&#xD;
    crouchedBox,standingBox,playerBox,whipSoundCheck=True},&#xD;
&#xD;
        Attributes[standWhipUpdate] = {HoldAll};&#xD;
        standWhipUpdate[whipBox_] := ( . . . )&#xD;
&#xD;
        Attributes[crouchWhipUpdate] = {HoldAll};&#xD;
        crouchWhipUpdate[whipBox_] := ( . . . )&#xD;
&#xD;
        Attributes[moveRight] = {HoldRest};&#xD;
        moveRight[csX_, fps_] := ( . . . )&#xD;
&#xD;
        Attributes[moveLeft] = {HoldRest};&#xD;
        moveLeft[csX_, fps_] := ( . . . )&#xD;
&#xD;
        Attributes[character] = {HoldRest};&#xD;
        character[{csX_,csY_,csB_, csB2_}, enemyBox_, whipBox_, fps_, playerDead_] := ( &#xD;
            .&#xD;
            .&#xD;
            .&#xD;
            Inset[im, {playerX,playerY}, Scaled[{0.5,0.5}], 0.562]&#xD;
        )&#xD;
    ]&#xD;
&#xD;
Within this module I define a number of functions that share the scoped module variables. The main function is `character` that, after processing the current state of the player, returns the `Inset` graphics primitive.&#xD;
&#xD;
The `cs*` inputs are `ControllerState[&amp;#034;X3&amp;#034;]`, `ControllerState[&amp;#034;Y3&amp;#034;]`, `ControllerState[&amp;#034;B1&amp;#034;]`, and `ControllerState[&amp;#034;B2&amp;#034;]`, respectively. The other inputs are the hit boxes, time delay, and a predicate flag for whether the player is dead. &#xD;
&#xD;
The `character` function logic is as follows:&#xD;
&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;Has the character hit an enemy?&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&amp;lt;li&amp;gt; yes -&amp;gt; you&amp;#039;re dead&amp;lt;/li&amp;gt; &amp;lt;li&amp;gt;no -&amp;gt; you&amp;#039;re not dead&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;If not dead, then&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;Check the jump button&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;Check the whip button&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;Add gravity effect (you fall regardless of whether you&amp;#039;re alive)&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;if not dead, &amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;if jumping, &amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;are you whipping?&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;yes&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;no&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;else you&amp;#039;re walking&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;are you whipping?&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;yes&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;no -&amp;gt; update normal walking controls&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;else you&amp;#039;re dead -&amp;gt; update death animation&#xD;
&amp;lt;li&amp;gt;output Inset primitive with updated position and sprite image&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&#xD;
For example, while on the ground and not whipping, I use a [`Which`][28] expression to decide the update:&#xD;
&#xD;
    Which[&#xD;
    (* walking to the right *)&#xD;
        csX==1 &amp;amp;&amp;amp; (csY==0 || csY==1),&#xD;
        moveRight[csX, fps];&#xD;
        playerCrouched=False;&#xD;
&#xD;
        (* animate character sprite *)&#xD;
        playerAnimationCounter += 1;&#xD;
        If[Mod[playerAnimationCounter,walkAnimationDelay]==0,&#xD;
            playerAnimationCounter=1;&#xD;
            im=walkingRight[[If[playerFrame==4,playerFrame=1,++playerFrame]]]&#xD;
        ],&#xD;
&#xD;
    (* walking to the left *)&#xD;
        csX==-1 &amp;amp;&amp;amp; (csY==0 || csY==1), &#xD;
        moveLeft[csX, fps];&#xD;
        playerCrouched=False;&#xD;
&#xD;
        (* animate character sprite *)&#xD;
        playerAnimationCounter += 1;&#xD;
        If[Mod[playerAnimationCounter,walkAnimationDelay]==0,&#xD;
            playerAnimationCounter=1; &#xD;
            im=walkingLeft[[If[playerFrame==4,playerFrame=1,++playerFrame]]]&#xD;
        ],&#xD;
&#xD;
    (* crouched to the right *)&#xD;
        csX==1 &amp;amp;&amp;amp; csY==-1,&#xD;
        If[!playerFacingRight, playerFacingRight=True];&#xD;
        playerCrouched=True;&#xD;
        playerAnimationCounter=9;&#xD;
        im=crouchRight,&#xD;
&#xD;
    (* crouched to the left *)&#xD;
        csX==-1 &amp;amp;&amp;amp; csY==-1,&#xD;
        If[playerFacingRight, playerFacingRight=False];&#xD;
        playerCrouched=True;&#xD;
        playerAnimationCounter=9;&#xD;
        im=crouchLeft,&#xD;
&#xD;
    (* crouch down *)&#xD;
        csX==0 &amp;amp;&amp;amp; csY==-1,&#xD;
        If[!playerCrouched, &#xD;
            playerCrouched=True; &#xD;
            im = If[playerFacingRight, crouchRight, crouchLeft]&#xD;
        ],&#xD;
&#xD;
    (* stand up *)	&#xD;
        csX==0 &amp;amp;&amp;amp; csY==1,&#xD;
        playerFrame=1;&#xD;
        If[playerCrouched, &#xD;
            playerCrouched=False; &#xD;
            im = If[playerFacingRight, walkingRight, walkingLeft][[playerFrame]]&#xD;
        ]&#xD;
    ]&#xD;
&#xD;
You&amp;#039;ll see that the animation of the character involves a delayed update. So not only am I slowing the apparent motion with the `fps` variable, I also slow the apparent animation by using a `playerAnimationCounter` with a fixed `walkAnimationDelay`.&#xD;
&#xD;
I did include a double jump, but it is also somewhat irrelevant for the simplicity of the level.&#xD;
&#xD;
    (* check state of jump button *)&#xD;
    Switch[{previousJumpState,csB},&#xD;
        {False,True}, If[jumpCounter&amp;lt;2,jumpCounter+=1;playerYvel=(jumpVel/fps);previousJumpState=True],&#xD;
        {True,False}, previousJumpState=False;&#xD;
    ];&#xD;
&#xD;
## Enemy Controls ##&#xD;
&#xD;
----------&#xD;
&#xD;
I use a [`Module`][29] to mimic &amp;#034;static&amp;#034; variables for the enemies as well.&#xD;
&#xD;
    Attributes[createEnemy] = {HoldRest};&#xD;
    createEnemy[index_Integer, whipBox_, enemyBox_, tsf_, score_, enemyReady_] := Module[&#xD;
    {xPos, yPos, xVel, yVel, im, speedTrigger=False, dying=False, size,&#xD;
    enemyAnimationCounter=1, enemyFrame=1, enemyAnimationDelay=25},&#xD;
    &#xD;
        enemyBox = {{0,0},{0,0}};&#xD;
        initializeEnemy[index, &amp;#034;ghoulRight&amp;#034;] := ( . . . )&#xD;
        initializeEnemy[index, &amp;#034;ghoulLeft&amp;#034;] := ( . . . )&#xD;
    ]&#xD;
&#xD;
Within this module I define a number of functions that share the scoped module variables. The main function is `initializeEnemy` that itself defines another function `enemy`. It seems complicated, but this type of scoping helps avoid memory leaks and treats each enemy as an independent object. The `enemy` function processes the current state of the enemy and returns an `Inset` graphics primitive.&#xD;
&#xD;
Adding a new type of enemy is straightforward; create a new `initializeEnemy` code block with an overloaded patter e.g. `initializeEnemy[index, &amp;#034;medusaRight&amp;#034;]`.&#xD;
&#xD;
The ghoul logic is much simpler:&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;is the enemy dead?&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt; &amp;lt;li&amp;gt;no&amp;lt;/li&amp;gt;&#xD;
&amp;lt;ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;update position&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;have you hit the whip box? yes -&amp;gt; set dead flag&amp;lt;/li&amp;gt;&#xD;
&amp;lt;li&amp;gt;have you left the screen? yes -&amp;gt; move off screen and set ready flag&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;yes -&amp;gt; do death animation and reset&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;li&amp;gt;output Inset primitive with updated position and sprite image&amp;lt;/li&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&amp;lt;/ul&amp;gt;&#xD;
&#xD;
For example, the movement logic is much simpler than the character. It only moves left or right.&#xD;
&#xD;
    initializeEnemy[index, &amp;#034;ghoulLeft&amp;#034;] := (&#xD;
        . . .&#xD;
        enemy[index] :=  (&#xD;
            If[!dying,&#xD;
                (* if alive *)&#xD;
                (* update position and enemy hit box *)&#xD;
                xPos += xVel/tsf; &#xD;
                enemyBox = {{-0.037,-0.075}+{xPos,yPos},{0.029,0.081}+{xPos,yPos}};&#xD;
                . . .&#xD;
            ]&#xD;
        )&#xD;
        . . .&#xD;
    )&#xD;
   &#xD;
&#xD;
## Hit Box Management ##&#xD;
&#xD;
----------&#xD;
&#xD;
The hit boxes follow the [`Rectangle`][30] syntax in that they specify a box by the lower-left and upper-right corners only. All hit boxes are un-rotated rectangles. I check whether the hit boxes are left/right or above/below of each other. If they are not, then they must be overlapping.&#xD;
&#xD;
    impactQ = Compile[{{box1,_Real,2},{box2,_Real,2}},&#xD;
    	(* if one hitbox is on the left side of the other *)&#xD;
    	If[box1[[2,1]] &amp;lt; box2[[1,1]] || box1[[1,1]] &amp;gt; box2[[2,1]], Return[False]];&#xD;
    	&#xD;
    	(* if one hitbox is above the other *)&#xD;
    	If[box1[[2,2]] &amp;lt; box2[[1,2]] || box1[[1,2]] &amp;gt; box2[[2,2]], Return[False]];&#xD;
    	&#xD;
    	True&#xD;
    ];&#xD;
&#xD;
The enemies and player&amp;#039;s hit boxes are given as relative distances from their centers. For example,&#xD;
&#xD;
    (* define character hit boxes *)&#xD;
    whipStandLeftBox = {{-0.2`,0.02`},{-0.06`,0.07`}};&#xD;
    whipStandRightBox = {{0.06`,0.02`},{0.2`,0.07`}};&#xD;
    whipCrouchedLeftBox = {{-0.204`,-0.02`},{-0.052`,0.034`}};&#xD;
    whipCrouchedRightBox = {{0.052`,-0.02`},{0.204`,0.034`}};&#xD;
    crouchedBox = {{-0.02`,-0.06`},{0.02`,0.038`}};&#xD;
    standingBox = {{-0.02`,-0.06`},{0.02`,0.086`}};&#xD;
    playerBox = standingBox + {{playerX,playerY},{playerX,playerY}};&#xD;
    &#xD;
I determined the hit boxes using a Manipulate:&#xD;
&#xD;
    Manipulate[&#xD;
     playerX = 0.288; playerY = 0.282; im = ImageReflect[Import[&amp;#034;whip3.png&amp;#034;], Right];&#xD;
     Graphics[&#xD;
      {Inset[im, {playerX, playerY}, Scaled[{0.5, 0.5}], 0.562],&#xD;
       FaceForm[None], EdgeForm[Directive[Red, Thick]],&#xD;
       Dynamic[ Rectangle[{playerX + left, playerY + bottom}, {playerX + right, playerY + top}] ]&#xD;
      }, &#xD;
      Frame -&amp;gt; False, ImageSize -&amp;gt; Medium, PlotRange -&amp;gt; {{0, 1}, {0, 0.5}}&#xD;
      ]&#xD;
     , &#xD;
    {{left, -0.2}, -0.5, 0.5, LabeledSlider}, &#xD;
    {{bottom, -0.2}, -0.5, 0.5, LabeledSlider}, &#xD;
    {{right, 0.2}, -0.5, 0.5, LabeledSlider}, &#xD;
    {{top, 0.2}, -0.5, 0.5, LabeledSlider}&#xD;
    ]&#xD;
&#xD;
![enter image description here][31]&#xD;
&#xD;
The whip is more complicated. The whip&amp;#039;s hit box is only active when the whip is fully extended, and its position depends on which direction the player is facing. For example, while in the air movement is allowed. Note in the following that `whipframe` #3 is when the whip box is active. Otherwise, within the `standWhipUpdate` function the whip box is moved off screen so it doesn&amp;#039;t hit anything.&#xD;
&#xD;
&#xD;
        (* while in the air *)&#xD;
        playerFrame=1; playerCrouched=False;&#xD;
        Which[&#xD;
            csX==1, moveRight[csX, fps],&#xD;
            csX==-1, moveLeft[csX, fps]&#xD;
        ];&#xD;
        If[whipping,&#xD;
            (* if whipping, player is in standing position *)&#xD;
            standWhipUpdate[whipBox];&#xD;
            (* whipping in the air is unique as movement is allowed; hit boxes need to update with the player&amp;#039;s movement *)&#xD;
            playerBox = standingBox;&#xD;
            If[whipFrame==3, whipBox = If[playerFacingRight, whipStandRightBox, whipStandLeftBox] + {{playerX,playerY},{playerX,playerY}}],&#xD;
&#xD;
            (* if not whipping, the legs tuck midway through the jump *)&#xD;
            If[-(jumpVel/fps)/1.5 &amp;lt; playerYvel &amp;lt; (jumpVel/fps)/1.5, &#xD;
                playerBox = crouchedBox;&#xD;
                im = If[playerFacingRight, crouchRight, crouchLeft],&#xD;
                playerBox = standingBox;&#xD;
                im = If[playerFacingRight, walkingRight, walkingLeft][[playerFrame]];&#xD;
            ];&#xD;
        ]&#xD;
&#xD;
The hit boxes are passed around between the functions. The player only cares about the enemy hit boxes:&#xD;
&#xD;
    If[&#xD;
       	AnyTrue[{enemyBox[1],enemyBox[2],enemyBox[3],enemyBox[4],enemyBox[5],&#xD;
    		enemyBox[6],enemyBox[7],enemyBox[8],enemyBox[9],enemyBox[10]},&#xD;
    		impactQ[playerBox,#]&amp;amp;&#xD;
    	], &#xD;
    	playerDead = True; playerCrouched=True;&#xD;
    	playerBox = {{1,1},{1,1}};&#xD;
    	playerFrame=1;&#xD;
    	im = If[playerFacingRight, playerDeathRight, playerDeathLeft][[playerFrame]];&#xD;
    	playerAnimationCounter=1;&#xD;
    ];&#xD;
&#xD;
While the enemies only care about the whip hit box:&#xD;
&#xD;
    If[impactQ[whipBox,enemyBox], &#xD;
    	dying = True; EmitSound[hitSound]; score++; &#xD;
    	enemyBox = {{0,0},{0,0}};&#xD;
    	size = 0.035;&#xD;
    	enemyFrame=1;&#xD;
    	im = enemyDeath[[enemyFrame]];&#xD;
    	enemyAnimationCounter=1;&#xD;
    ];&#xD;
&#xD;
## Final bells and whistles ##&#xD;
&#xD;
----------&#xD;
&#xD;
&#xD;
The final steps include putting all the code into a larger [`DynamicModule`][32]. I added a static pause screen that also displays the controls as a [`PaneSelector`][33]. You can pause the game theoretically at any time, however the other dynamic updates can sometimes block the button. It works better by pressing and holding it until the screen appears, or by holding a direction on the directional pad and then press &amp;#034;start&amp;#034;. &#xD;
&#xD;
The &amp;#034;restart&amp;#034; button, that is only active after you die, has the same issue. I haven&amp;#039;t figured out how to fix this. &#xD;
&#xD;
When you restart after dying, you start in a crouched whipping position and your score is reset.&#xD;
&#xD;
I also added sound effects for the whip and when you hit an enemy. I added the option for background music as an available MIDI file from the ([Video Game Music Headquarters][34]), since the song &amp;#034;Vampire Killer&amp;#034; is so iconic, but I did not loop it.&#xD;
&#xD;
The enemies are generated based on a [`RandomVariate`][35] taken from a [`NormalDistribution`][36] with mean 100 &amp;#039;cycles&amp;#039; and a wide variance.&#xD;
&#xD;
    playLevel[] := Deploy@DynamicModule[{whipBox={{-10,-10},{-5,-5}}, fps=50, &#xD;
    enemyBox, playerDead=False, score=0, enemyReady, previousButtonState=False, pressed=False, enemyCounter=1, &#xD;
    enemyVariate=RandomVariate[NormalDistribution[100,30]]},&#xD;
    (* start background music *)&#xD;
    (*EmitSound[music];*)&#xD;
    &#xD;
    (* use PaneSelector to toggle between pause screen and active game *)&#xD;
    PaneSelector[&#xD;
    {&#xD;
    True -&amp;gt; &#xD;
    	Column[{&#xD;
    	Graphics[&#xD;
    		{&#xD;
    		Inset[background, {0,0}, Scaled[{0,0}], 4.19],&#xD;
    		Dynamic[Inset[Style[score,Red,Bold,27], {scrollPos+screenWidth-0.1,0.9}]],&#xD;
    		Dynamic[&#xD;
    			If[playerDead, &#xD;
    				If[ControllerState[&amp;#034;B7&amp;#034;], &#xD;
    					playerDead=False; score=0; character[{1,-1,False,True}, enemyBox, whipBox, fps, playerDead]&#xD;
    				];&#xD;
    				Inset[Panel[Style[&amp;#034;   Play again? \nPress Restart Button.&amp;#034;,Red,Bold,27],Background-&amp;gt;Black], {scrollPos+screenWidth*0.5,0.5}],&#xD;
    				&#xD;
    				{}&#xD;
    			]&#xD;
    		],&#xD;
    		Dynamic[{&#xD;
    			If[(enemyCounter += 1) &amp;gt; enemyVariate, &#xD;
    				enemyCounter=1; enemyVariate=RandomVariate[NormalDistribution[100,30]];&#xD;
    				initializeEnemy[ &#xD;
    					First[Pick[{1,2,3,4,5,6,7,8,9,10}, enemyReady /@ {1,2,3,4,5,6,7,8,9,10}], {}], &#xD;
    					RandomChoice[{&amp;#034;ghoulLeft&amp;#034;,&amp;#034;ghoulRight&amp;#034;}] &#xD;
    				]&#xD;
    			];&#xD;
    			enemy[1],enemy[2],enemy[3],enemy[4],enemy[5],&#xD;
    			enemy[6],enemy[7],enemy[8],enemy[9],enemy[10],&#xD;
    			character[&#xD;
    				{&#xD;
    				ControllerState[&amp;#034;X3&amp;#034;],ControllerState[&amp;#034;Y3&amp;#034;],&#xD;
    				ControllerState[&amp;#034;B1&amp;#034;],ControllerState[&amp;#034;B3&amp;#034;]&#xD;
    				},&#xD;
    				enemyBox, whipBox, fps, playerDead&#xD;
    			]&#xD;
    		}]&#xD;
    		}, &#xD;
    		Frame -&amp;gt; False,&#xD;
    		ImageSize -&amp;gt; Large,&#xD;
    		PlotRange -&amp;gt; {{Dynamic[0+scrollPos],Dynamic[screenWidth+scrollPos, TrackedSymbols:&amp;gt;{scrollPos}]}, {0,1}},&#xD;
    		PlotRangePadding -&amp;gt; None,&#xD;
    		PlotRangeClipping -&amp;gt; True,&#xD;
    		ImagePadding -&amp;gt; 1&#xD;
    	](*,&#xD;
    	LabeledSlider[Dynamic[fps],{1,72}]*)&#xD;
    	}],&#xD;
    &#xD;
    False -&amp;gt; controls&#xD;
    &#xD;
    },&#xD;
    &#xD;
    Dynamic[&#xD;
    	Switch[{previousButtonState,ControllerState[&amp;#034;B8&amp;#034;]},&#xD;
    		{False,True}, If[pressed,pressed=False,pressed=True]; previousButtonState=True,&#xD;
    		{True,False}, previousButtonState=False&#xD;
    	];&#xD;
    	pressed&#xD;
    ],&#xD;
    ImageSize -&amp;gt; Automatic&#xD;
    ](* end PaneSelector *),&#xD;
    &#xD;
    Initialization :&amp;gt; (&#xD;
    	Do[With[{i=i}, createEnemy[i, whipBox, enemyBox[i], fps, score, enemyReady]], {i,1,10}];&#xD;
    	enemy[1]=enemy[2]=enemy[3]=enemy[4]=enemy[5]=enemy[6]=enemy[7]=enemy[8]=enemy[9]=enemy[10] = {};&#xD;
    	enemyReady[1]=enemyReady[2]=enemyReady[3]=enemyReady[4]=enemyReady[5] = True;&#xD;
    	enemyReady[6]=enemyReady[7]=enemyReady[8]=enemyReady[9]=enemyReady[10] = True;&#xD;
    )	&#xD;
    ]&#xD;
&#xD;
&#xD;
  [1]: http://community.wolfram.com/groups/-/m/t/1127985&#xD;
  [2]: http://community.wolfram.com//c/portal/getImageAttachment?filename=play.gif&amp;amp;userId=829295&#xD;
  [3]: https://github.com/KMDaily/CastlevaniaDemo_WolframLanguage&#xD;
  [4]: http://reference.wolfram.com/language/ref/ControllerState.html&#xD;
  [5]: http://community.wolfram.com//c/portal/getImageAttachment?filename=Controls2.png&amp;amp;userId=829295&#xD;
  [6]: http://reference.wolfram.com/language/ref/PlotRange.html&#xD;
  [7]: http://reference.wolfram.com/language/ref/Insert.html&#xD;
  [8]: http://reference.wolfram.com/language/ref/Graphics.html&#xD;
  [9]: http://community.wolfram.com//c/portal/getImageAttachment?filename=LevelMap.png&amp;amp;userId=829295&#xD;
  [10]: http://reference.wolfram.com/language/ref/PlotRange.html&#xD;
  [11]: http://community.wolfram.com//c/portal/getImageAttachment?filename=scrollPosition.PNG&amp;amp;userId=829295&#xD;
  [12]: http://reference.wolfram.com/language/ref/ScheduledTask.html&#xD;
  [13]: http://reference.wolfram.com/language/ref/Dynamic.html&#xD;
  [14]: http://community.wolfram.com//c/portal/getImageAttachment?filename=slowDown.PNG&amp;amp;userId=829295&#xD;
  [15]: https://www.spriters-resource.com/&#xD;
  [16]: http://community.wolfram.com//c/portal/getImageAttachment?filename=characterWalking.PNG&amp;amp;userId=829295&#xD;
  [17]: http://community.wolfram.com//c/portal/getImageAttachment?filename=6947characterSpriteExtent.PNG&amp;amp;userId=829295&#xD;
  [18]: http://community.wolfram.com//c/portal/getImageAttachment?filename=characterCrouchExtent.PNG&amp;amp;userId=829295&#xD;
  [19]: http://community.wolfram.com//c/portal/getImageAttachment?filename=characterDeath.PNG&amp;amp;userId=829295&#xD;
  [20]: http://reference.wolfram.com/language/ref/RemoveBackground.html&#xD;
  [21]: http://reference.wolfram.com/language/ref/ImageCrop.html&#xD;
  [22]: http://reference.wolfram.com/language/ref/Inset.html&#xD;
  [23]: http://reference.wolfram.com/language/ref/ImagePad.html&#xD;
  [24]: http://reference.wolfram.com/language/ref/Manipulate.html&#xD;
  [25]: http://community.wolfram.com//c/portal/getImageAttachment?filename=imageAlignment.PNG&amp;amp;userId=829295&#xD;
  [26]: http://community.wolfram.com//c/portal/getImageAttachment?filename=3893reflectionAlignment.PNG&amp;amp;userId=829295&#xD;
  [27]: http://reference.wolfram.com/language/ref/Module.html&#xD;
  [28]: http://reference.wolfram.com/language/ref/Which.html&#xD;
  [29]: http://reference.wolfram.com/language/ref/Module.html&#xD;
  [30]: http://reference.wolfram.com/language/ref/Rectangle.html&#xD;
  [31]: http://community.wolfram.com//c/portal/getImageAttachment?filename=whipbox.PNG&amp;amp;userId=829295&#xD;
  [32]: http://reference.wolfram.com/language/ref/DynamicModule.html&#xD;
  [33]: http://reference.wolfram.com/language/ref/PaneSelector.html&#xD;
  [34]: http://www.vgmusic.com&#xD;
  [35]: http://reference.wolfram.com/language/ref/RandomVariate.html&#xD;
  [36]: http://reference.wolfram.com/language/ref/NormalDistribution.html</description>
    <dc:creator>Kevin Daily</dc:creator>
    <dc:date>2017-08-09T21:18:36Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1179687">
    <title>WolframMark System Comparison and System  Benchmarks</title>
    <link>https://community.wolfram.com/groups/-/m/t/1179687</link>
    <description>I was wondering what criteria is/was used to determine what benchmarks to include when running a benchmark report on a particular machine. Specifically, running:&#xD;
&#xD;
    Needs[&amp;#034;Benchmarking`&amp;#034;]&#xD;
    &#xD;
    BenchmarkReport[]&#xD;
&#xD;
After running this on my work machine, I noticed the top benchmark was an Intel Core i7-3770 CPU @ 3.40 GHz (8 cores) running 64-bit Linux. Surely there are better (i.e. higher WolframMark &amp;#034;score&amp;#034;) architectures out there to compare, right? After briefly searching the web and other forums for other people using the benchmarking package, I noticed the same benchmarks for comparison on other posted reports. Have the CPU benchmarks not been updated to current technology? Perhaps if I had a better architecture I might see my results show up above this benchmark? Has anyone done this?</description>
    <dc:creator>Jacob Lapenna</dc:creator>
    <dc:date>2017-09-08T17:40:57Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/861654">
    <title>Loading packages in Mathematica 10?</title>
    <link>https://community.wolfram.com/groups/-/m/t/861654</link>
    <description>For years now I have occasionally made use of packages. I have always found that the directions don&amp;#039;t work for me, even though I have tried time and again to follow them closely and to try different ways of loading them. I have always had to resort to opening the package and executing it before I could use the package functions in a Mathematica notebook. I am making another try now. The first file is a package. The second file is a notebook that should load the package. It appears that the names of the symbols load into the second script, but they do not function as they should. Any ideas? The following two files should illustrate my problem.&#xD;
&#xD;
    (* filename: Development.m *)&#xD;
    &#xD;
    BeginPackage[&amp;#034;Development`&amp;#034;]&#xD;
    &#xD;
    v::usage = &amp;#034;v[z] converts x+iy to {x, y}.&amp;#034;&#xD;
    &#xD;
    hello::usage = &amp;#034;Says hello.&amp;#034;&#xD;
    &#xD;
    Begin[&amp;#034;Private`&amp;#034;]&#xD;
    &#xD;
    hello = Print[&amp;#034;Hello from hello&amp;#034;];&#xD;
    &#xD;
    v[z_] := {Re @ z, Im @ z};&#xD;
    &#xD;
    End[]&#xD;
    &#xD;
    EndPackage[]&#xD;
    &#xD;
    &#xD;
    (* filename: testPackage.nb *)&#xD;
    &#xD;
    SetDirectory[$UserBaseDirectory &amp;lt;&amp;gt; &amp;#034;/Applications&amp;#034;]&#xD;
    &#xD;
    (* returns &amp;#034;/Users/myusername/Library/Mathematica/Applications&amp;#034; *)&#xD;
    &#xD;
    FileNames[]    (* returns {Development.m} *)&#xD;
    &#xD;
    &amp;lt;&amp;lt; Development`&#xD;
    &#xD;
    hello        (* returns &amp;#034;hello&amp;#034;, which is a failure *)&#xD;
    &#xD;
    v[2 + 3 I]  (* returns &amp;#034;v[2+3I]&amp;#034; which is a failure *)&#xD;
    &#xD;
    ?&amp;#034;Global`*&amp;#034;     (* returns panel with hello and v, but no variables are listed *)</description>
    <dc:creator>Gary Palmer</dc:creator>
    <dc:date>2016-05-25T03:19:08Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1425074">
    <title>Access to Roman Maeder&amp;#039;s Package for Computational Science with Mathematica</title>
    <link>https://community.wolfram.com/groups/-/m/t/1425074</link>
    <description>Dear community members,&#xD;
I just started reading Roman Maeder&amp;#039;s book &amp;#034;Computer Science with Mathematica&amp;#034; and I&amp;#039;d like to do the computations along but unfortunately the page to download the CSM package is no longer available: [http://www.mathconsult.ch/en/showroom/pubs/CSM][1]&#xD;
&#xD;
Does anybody know an alternative way to have access to the Mathematica package?&#xD;
&#xD;
Many thanks in advance.&#xD;
&#xD;
&#xD;
&#xD;
  [1]: http://www.mathconsult.ch/en/showroom/pubs/CSM</description>
    <dc:creator>Ruben Garcia Berasategui</dc:creator>
    <dc:date>2018-08-27T02:35:34Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/403833">
    <title>How do I set up multiple .m files in a package?</title>
    <link>https://community.wolfram.com/groups/-/m/t/403833</link>
    <description>I have read through the documentation and watched the videos. I even poked around to find older material.&#xD;
&#xD;
I think I understand how to set up a package in Workbench.&#xD;
&#xD;
However, all the examples I have seen have a single .m file for the code.&#xD;
&#xD;
I want to make a package/application that has multiple source files.&#xD;
&#xD;
How do I do this?&#xD;
&#xD;
Does each .m file have to have its own BeginPackage[]/EndPackage[] context, or can there be just one .m file that sets the context and the other source files are included as optional arguments to the only BeginPackage[] function call?&#xD;
&#xD;
In the past, packages have been set up with a &amp;#039;master&amp;#039; package that was called (Get[] or Needs[]) that would load all the sub-packages -- each of those could the loaded individually. How would I go about setting this up?&#xD;
&#xD;
Thanks.</description>
    <dc:creator>George Woodrow III</dc:creator>
    <dc:date>2014-12-08T13:59:33Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/474155">
    <title>psfrag for Mathematica 10</title>
    <link>https://community.wolfram.com/groups/-/m/t/474155</link>
    <description>Hello,&#xD;
&#xD;
As far as I understand, psfrag is no longer working with Mathematica 10. Does anyone have a solution for this problem or knows whether there will be a solution in the near future? Or is there an alternative?&#xD;
What I want to do is export eps files from Mathematica and include them into Latex with nice Labels.</description>
    <dc:creator>a b</dc:creator>
    <dc:date>2015-04-05T14:34:56Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1171718">
    <title>Compile your code for standalone projects?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1171718</link>
    <description>I&amp;#039;m doing the Mathematica trial right now, and I&amp;#039;m having trouble finding information about deployment of the algorithms I create.&#xD;
&#xD;
For example, say I create a new control algorithm for a power supply in Mathematica. How would I then &amp;#034;package up&amp;#034; my algorithm to work on a microcontroller in my actual product? I know that in MATLAB you can compile your code for deployment on other platforms, but it seems that compiling in Mathematica has a different meaning than that. I wouldn&amp;#039;t want to have to completely re-write my algorithms just to deploy on my target system.&#xD;
&#xD;
I found [this][1] tutorial that seems to be what I am looking for. Does the execution environment require the Mathematica kernel or is it entirely self contained?&#xD;
&#xD;
Thanks&#xD;
&#xD;
&#xD;
  [1]: http://reference.wolfram.com/language/CCodeGenerator/tutorial/Examples.html</description>
    <dc:creator>A S</dc:creator>
    <dc:date>2017-08-27T18:29:36Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/93435">
    <title>This OpenCL code seems to be leaking memory. Any ideas?</title>
    <link>https://community.wolfram.com/groups/-/m/t/93435</link>
    <description>Hello all,

I&amp;#039;ve been playing around with OpenCL and I&amp;#039;ve run into a problem that I can&amp;#039;t pin down. When running this n-body simulation, the amount of memory in use gradually increases with every time step (until I run out completely). I&amp;#039;ve tried using Bytecount[] on every variable that I can think of, and none of them seem to be the culprit.

Anyway, the OpenCL code in question is here:
[code]__kernel void nbody_kern(
	float timeStep,
	float eps,
	__global float4* position1,
	__global float4* velocity1,
	__global float4* acceleration1,
	__global float4* position2,
	__global float4* velocity2,
	__global float4* acceleration2,
	__local float4* localPosition
) {
	const float4 dt = (float4)(timeStep,timeStep,timeStep,0.0f);

	int idxGlobal = get_global_id(0);
	int idxLocal = get_local_id(0);

	int globalSize = get_global_size(0);
	int localSize = get_local_size(0);
	int blocks = globalSize / localSize;
	
	float4 currentPosition = position1[idxGlobal];
	float4 currentVelocity = velocity1[idxGlobal];
	float4 currentAcceleration = acceleration1[idxGlobal];
	
	float4 newPosition = (float4)(0.0f,0.0f,0.0f,0.0f);
	float4 newVelocity = (float4)(0.0f,0.0f,0.0f,0.0f);
	float4 newAcceleration = (float4)(0.0f,0.0f,0.0f,0.0f);
	
	for(int currentBlock = 0; currentBlock &amp;lt; blocks; currentBlock++)
	{
		localPosition[idxLocal] = position1[currentBlock * localSize + idxLocal];
		barrier(CLK_LOCAL_MEM_FENCE);
		for(int idx = 0; idx &amp;lt; localSize; idx++)
		{
			float4 dir = localPosition[idx] - currentPosition;
			float invRadius = rsqrt(dir.x * dir.x + dir.y * dir.y + dir.z * dir.z + eps);
			float magnitude = localPosition[idx].w * invRadius * invRadius * invRadius;
			newAcceleration += magnitude * dir;
		}
		barrier(CLK_LOCAL_MEM_FENCE);
	}
	
	// leapfrog integration
	newPosition = currentPosition + currentVelocity * dt + 0.5f * currentAcceleration * dt * dt;
	newVelocity = currentVelocity + 0.5f * (currentAcceleration + newAcceleration) * dt;
	
	position2[idxGlobal] = newPosition;
	velocity2[idxGlobal] = newVelocity;
	acceleration2[idxGlobal] = newAcceleration;
}[/code] 
and the Mathematica code is here:[mcode]initialVelocity[pt_] := Module[
  {y, v0, \[Theta]},
  y = Norm[pt[[1 ;; 3]]]/(2 rd);
  v0 = 4*\[Pi]*\[CapitalSigma]0*rd*
    y^2 (BesselI[0, y]*BesselK[0, y] - BesselI[1, y]*BesselK[1, y]);
  \[Theta] = ArcTan[pt[[1]], pt[[2]]];
  {-v0 Sin[\[Theta]], v0 Cos[\[Theta]], 0.0, 0.0} + 
   RandomVariate[NormalDistribution[0, .001], 4]
  ]

Needs[&amp;#034;OpenCLLink`&amp;#034;];
source = {&amp;#034;D:\\Google Drive\\Mathematica\\nbody.cl&amp;#034;};

stepSimulation = OpenCLFunctionLoad[
   source,
   &amp;#034;nbody_kern&amp;#034;,
   {
    &amp;#034;Float&amp;#034;,
    &amp;#034;Float&amp;#034;,
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Input&amp;#034;},
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Input&amp;#034;},
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Input&amp;#034;},
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Output&amp;#034;},
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Output&amp;#034;},
    {&amp;#034;Float&amp;#034;, _, &amp;#034;Output&amp;#034;},
    {&amp;#034;Local&amp;#034;, &amp;#034;Float&amp;#034;}
    },
   256, &amp;#034;ShellOutputFunction&amp;#034; -&amp;gt; Print
   ];

dt = .01;
eps = .0001;
rd = 1.0;
\[CapitalSigma]0 = 0.3;
len = 2^14;

particles = (RandomVariate[ExponentialDistribution[rd]]*{Cos[#], 
       Sin[#], 0.0, 0.0}) &amp;amp; /@ RandomReal[{0, 2 Pi}, len];
particles[[All, 4]] = 1.0/len;
velocity = initialVelocity /@ particles;
acceleration = Array[{0.0, 0.0, 0.0, 0.0} &amp;amp;, len];

position1 = OpenCLMemoryLoad[particles, &amp;#034;Float&amp;#034;];
velocity1 = OpenCLMemoryLoad[velocity, &amp;#034;Float&amp;#034;];
acceleration1 = OpenCLMemoryLoad[acceleration, &amp;#034;Float&amp;#034;];

position2 = OpenCLMemoryAllocate[&amp;#034;Float&amp;#034;, {len, 4}];
velocity2 = OpenCLMemoryAllocate[&amp;#034;Float&amp;#034;, {len, 4}];
acceleration2 = OpenCLMemoryAllocate[&amp;#034;Float&amp;#034;, {len, 4}];

pr = 8;
memList = {MemoryInUse[]};
Graphics3D[{
  PointSize[Small],
  Point[Dynamic[Refresh[
     AppendTo[memList, MemoryInUse[]];
     stepSimulation[dt, eps, position1, velocity1, acceleration1, 
      position2, velocity2, acceleration2, 256*4, len];
     stepSimulation[dt, eps, position2, velocity2, acceleration2, 
      position1, velocity1, acceleration1, 256*4, len];
     OpenCLMemoryGet[position1][[All, 1 ;; 3]],
     UpdateInterval -&amp;gt; 0]]
   ]}, PlotRange -&amp;gt; {{-pr, pr}, {-pr, pr}, {-pr/4, pr/4}}, 
 ImageSize -&amp;gt; 1000
 ]
Dynamic[ListLinePlot[memList]]
[/mcode]
As far as I can tell, the code does what it&amp;#039;s supposed to and I&amp;#039;m generally pleased with the results. This is what I get after a few steps:
[img=width: 400px; height: 334px;]http://i.imgur.com/hQFbPZO.png[/img]
However, the memory problem limits how long I can run this thing for. This plot shows the amount of memory in use with respect to the number of steps completed in the simulation.
[img=width: 360px; height: 209px;]http://i.imgur.com/SGWx0aP.png[/img]

The only way I&amp;#039;ve been able to free up all that memory is by quitting the kernel, which is hardly ideal. I&amp;#039;m guessing that I&amp;#039;m just missing some important aspect of OpenCL programming. If anyone is more familiar with this stuff and has some ideas, I&amp;#039;d be thrilled to hear them.</description>
    <dc:creator>Richard Hennigan</dc:creator>
    <dc:date>2013-08-09T17:18:48Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/1657536">
    <title>Calculate Shapley Values using TuGames package?</title>
    <link>https://community.wolfram.com/groups/-/m/t/1657536</link>
    <description>I downloaded the package TuGames from http://library.wolfram.com/infocenter/MathSource/5709/ (for Windows) to calculate Shapley Values in cooperative bargaining games.&#xD;
&#xD;
I got it to work earlier today but after closing and opening mathematica again, this simple code would not work. When it worked, all I did was paste the content of the package in C:\Program Files\Wolfram Research\Mathematica\11.0\AddOns\Packages\TuGames\, and I manage to run the code below. However, it doesn&amp;#039;t run anymore. Any thoughts on what could be causing the problem?&#xD;
&#xD;
 Needs[&amp;#034;coop`CooperativeGames`&amp;#034;]&#xD;
    Needs[&amp;#034;TuGames`&amp;#034;]&#xD;
    &#xD;
    ExpGame := (T = {1, 2, 3, 4}; Clear[v];&#xD;
      v[{}] = 0;&#xD;
      v[{1}] = 0;&#xD;
      v[{2}] = 0;&#xD;
      v[{3}] = 0;&#xD;
      v[{4}] = 0;&#xD;
      v[{1, 2}] = 0;&#xD;
      v[{1, 3}] = 1/4;&#xD;
      v[{1, 4}] = 2/4;&#xD;
      v[{2, 3}] = 1/4;&#xD;
      v[{2, 4}] = 3/4;&#xD;
      v[{3, 4}] = 0;&#xD;
      v[{1, 2, 3}] = 1;&#xD;
      v[{1, 2, 4}] = 1;&#xD;
      v[{1, 3, 4}] = 1;&#xD;
      v[{2, 3, 4}] = 1; v[T] = 2)&#xD;
    ShapleyValue[ExpGame]&#xD;
&#xD;
&#xD;
   &#xD;
This is the error I&amp;#039;d get sometimes. Other times it just crashes.&#xD;
&#xD;
    In[30]:= Needs[&amp;#034;coop`CooperativeGames`&amp;#034;]&#xD;
    Needs[&amp;#034;TuGames`&amp;#034;]&#xD;
    During evaluation of In[30]:= Get::noopen: Cannot open coop`CooperativeGames`.&#xD;
    During evaluation of In[30]:= Needs::nocont: Context coop`CooperativeGames` was not created when Needs was evaluated.&#xD;
    Out[30]= $Failed</description>
    <dc:creator>rodrigo montes</dc:creator>
    <dc:date>2019-04-10T13:28:43Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/516854">
    <title>How to Install HadoopLink?</title>
    <link>https://community.wolfram.com/groups/-/m/t/516854</link>
    <description>Hello, I am trying to use the HadoopLink package for the first time, and running into a few challenges.  I am hoping someone out there is using this successfully, and might have some tips for a smooth installation in the current version of mathematica (10.2 at the time of writing this).  &#xD;
&#xD;
I have downloaded the open-source project and I am following along with [HadoopLink installation instructions on GitHub][1].&#xD;
&#xD;
I have unpacked the .zip and placed the HadoopLink folder (and only that folder, not the entire unpacked project) into my $User/Libarary/Mathematica/Applications folder, and loaded the package using:&#xD;
&#xD;
    &amp;lt;&amp;lt; HadoopLink`&#xD;
&#xD;
But when I proceed to the next step, and execute this code...&#xD;
&#xD;
    link = OpenHadoopLink[&#xD;
       &amp;#034;fs.default.name&amp;#034; -&amp;gt; &amp;#034;hdfs://hadoopheadlx.wolfram.com:8020&amp;#034;,&#xD;
       &amp;#034;mapred.job.tracker&amp;#034; -&amp;gt; &amp;#034;hadoopheadlx.wolfram.com:8021&amp;#034;];&#xD;
&#xD;
    DFSFileNames[link]&#xD;
&#xD;
Mathematica output spews a bunch of Java exceptions (attached).  Anybody have more detailed instructions on setting up HadoopLink?  Maybe I should have put the entire project folder into the /Applications folder instead.  I will try that now...&#xD;
&#xD;
  [1]: https://github.com/shadanan/HadoopLink</description>
    <dc:creator>Caitlin Ramsey</dc:creator>
    <dc:date>2015-06-22T15:09:06Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/356717">
    <title>Any efficient VERTEX ENUMERATION packages available?</title>
    <link>https://community.wolfram.com/groups/-/m/t/356717</link>
    <description>Sometimes I need to do **vertex enumerations** on Mathematica. There used to be a `VertexEnum.m` package, even though it is very old and lacks of efficiency.  However, after upgrading to *Mathematica 10*, this package doesn&amp;#039;t work any more. Are there an latest `VertexEnum.m` package working with the latest version of *Mathematica* or any other packages doing the vertex enumeration job?&#xD;
&#xD;
**Update:**&#xD;
&#xD;
I have fixed the bug in package `VertexEnum.m` and now it works in  *Mathematica 10*. But the efficiency of this package drives me crazy. I looked into the package and found that package `VertexEnum.m` have a much more efficient `C` implementation named `cddlib`. It has a prebuilt interface to *Mathematica* called `cddmathlink` or `cddmathlink2`. However, it was compiled about 10 years ago, and dose not work on the lasted *OS X 10.9*. So my question is who has latest version of `cddmathlink` or `cddmathlink2` which works in latest *Mathematica* or who can recompile the &#xD;
interface to *Mathematica* for me on *OS X 10.9*. (I have been trying to recompile it by myself for almost a month, but apparently I&amp;#039;m not that material at all.) For more information about `cddlib`, you may find its homepage [here](http://www.inf.ethz.ch/personal/fukudak/cdd_home/).</description>
    <dc:creator>Han Xiao</dc:creator>
    <dc:date>2014-09-27T05:22:08Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/295756">
    <title>CloudDeploy with a Package.  ExternalBundle?</title>
    <link>https://community.wolfram.com/groups/-/m/t/295756</link>
    <description>I want to be able to load a package that I&amp;#039;ve uploaded to my Cloud account. I&amp;#039;m not sure how to do it, but the usual way to load a package doesn&amp;#039;t seem to work. I see that there is a cloud-related function called ExternalBundle.  Is that used to include a package? I can&amp;#039;t find any examples of how ExternalBundle is used. Anyone know of one?

Ken Levasseur 
UMass Lowell</description>
    <dc:creator>Ken Levasseur</dc:creator>
    <dc:date>2014-07-16T01:55:57Z</dc:date>
  </item>
  <item rdf:about="https://community.wolfram.com/groups/-/m/t/385892">
    <title>How do I fix this error when importing a custom Java class in J/Link?</title>
    <link>https://community.wolfram.com/groups/-/m/t/385892</link>
    <description>Hi folks,&#xD;
&#xD;
I just recently started experimenting with the *Mathematica J/Link* extension, and decided to try and utilize a small custom Java class within *Mathematica*. The class is simple and runs perfectly well within Eclipse, but when I tried to follow the instructions for importing a Java class with J/Link at [http://reference.wolfram.com/language/JLink/tutorial/CallingJavaFromTheWolframLanguage.html][1], I found that I kept getting the error:&#xD;
&#xD;
**&amp;#034;A Java exception occurred: &amp;#034;java.lang.UnsupportedClassVersionError: \&#xD;
MyClass : Unsupported major.minor version 52.0&amp;#034;**&#xD;
&#xD;
The above error was the result of the LoadJavaClass[] function.  The simple code I had used up to this point was as follows:&#xD;
&#xD;
    Needs[&amp;#034;JLink`&amp;#034;]&#xD;
    InstallJava[]&#xD;
    AddToClassPath[&amp;#034;/My/Project/Class/Path/&amp;#034;]&#xD;
    LoadJavaClass[&amp;#034;MyClass&amp;#034;]&#xD;
&#xD;
With */My/Project/Class/Path/* as the directory path to the class and *MyClass* as the .class file itself, respectively.&#xD;
&#xD;
I&amp;#039;m currently running java version &amp;#034;1.8.0_25&amp;#034;, Mathematica 10.0.1.0, and Eclipse 4.4.1, if any of that makes a difference.&#xD;
&#xD;
Thank you to anyone who has a few minutes to help explain to me what I&amp;#039;m doing wrong and hopefully how to go about doing it correctly.&#xD;
&#xD;
-Wren&#xD;
&#xD;
  [1]: http://reference.wolfram.com/language/JLink/tutorial/CallingJavaFromTheWolframLanguage.html</description>
    <dc:creator>Wren Rudolph</dc:creator>
    <dc:date>2014-11-08T04:27:29Z</dc:date>
  </item>
</rdf:RDF>

